Hi,
i have situation where i need to update only certan columns in database. I to this in normal mode like:
private void HideGridColumnsByType(RadGrid grid)
{
GridColumn column;
switch (ReturnSelectedType())
{
case DbType.Int32:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierIntValue");
column.Visible = true;
break;
case DbType.Single:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDecimalValue");
column.Visible = true;
break;
case DbType.DateTime:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDateTimeValue");
column.Visible = true;
break;
case DbType.String:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierStringValue");
column.Visible = true;
break;
case DbType.Boolean:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierBooleanValue");
column.Visible = true;
break;
}
}
And this works fine. Still, when i am under event for edit
if (e.CommandName == "Edit")
{
var edititem = e.Item as GridEditableItem;
//edititem["ModifierIntValue"].Visible = false;
//edititem["ModifierDecimalValue"].Visible = false;
//edititem["ModifierDateTimeValue"].Visible = false;
//edititem["ModifierStringValue"].Visible = false;
//edititem["ModifierBooleanValue"].Visible = false;
edititem.EditManager.GetColumnEditor("ModifierIntValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierDecimalValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierDateTimeValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierStringValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierBooleanValue").ContainerControl.Visible = false;
switch (ReturnSelectedType())
{
case DbType.Int32:
edititem.EditManager.GetColumnEditor("ModifierIntValue").ContainerControl.Visible = true;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierIntValue");
//column.Visible = true;
break;
case DbType.Single:
edititem.EditManager.GetColumnEditor("ModifierDecimalValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDecimalValue");
//column.Visible = true;
break;
case DbType.DateTime:
edititem.EditManager.GetColumnEditor("ModifierDateTimeValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDateTimeValue");
//column.Visible = true;
break;
case DbType.String:
edititem.EditManager.GetColumnEditor("ModifierStringValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierStringValue");
//column.Visible = true;
break;
case DbType.Boolean:
edititem.EditManager.GetColumnEditor("ModifierBooleanValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierBooleanValue");
//column.Visible = true;
break;
}
}
this doesn't work? anyone has an idea how to hide fields when i press edit?
Thanks,
Vjeran
i have situation where i need to update only certan columns in database. I to this in normal mode like:
private void HideGridColumnsByType(RadGrid grid)
{
GridColumn column;
switch (ReturnSelectedType())
{
case DbType.Int32:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierIntValue");
column.Visible = true;
break;
case DbType.Single:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDecimalValue");
column.Visible = true;
break;
case DbType.DateTime:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDateTimeValue");
column.Visible = true;
break;
case DbType.String:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierStringValue");
column.Visible = true;
break;
case DbType.Boolean:
column = grid.MasterTableView.Columns.FindByUniqueName("ModifierBooleanValue");
column.Visible = true;
break;
}
}
And this works fine. Still, when i am under event for edit
if (e.CommandName == "Edit")
{
var edititem = e.Item as GridEditableItem;
//edititem["ModifierIntValue"].Visible = false;
//edititem["ModifierDecimalValue"].Visible = false;
//edititem["ModifierDateTimeValue"].Visible = false;
//edititem["ModifierStringValue"].Visible = false;
//edititem["ModifierBooleanValue"].Visible = false;
edititem.EditManager.GetColumnEditor("ModifierIntValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierDecimalValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierDateTimeValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierStringValue").ContainerControl.Visible = false;
edititem.EditManager.GetColumnEditor("ModifierBooleanValue").ContainerControl.Visible = false;
switch (ReturnSelectedType())
{
case DbType.Int32:
edititem.EditManager.GetColumnEditor("ModifierIntValue").ContainerControl.Visible = true;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierIntValue");
//column.Visible = true;
break;
case DbType.Single:
edititem.EditManager.GetColumnEditor("ModifierDecimalValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDecimalValue");
//column.Visible = true;
break;
case DbType.DateTime:
edititem.EditManager.GetColumnEditor("ModifierDateTimeValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierDateTimeValue");
//column.Visible = true;
break;
case DbType.String:
edititem.EditManager.GetColumnEditor("ModifierStringValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierStringValue");
//column.Visible = true;
break;
case DbType.Boolean:
edititem.EditManager.GetColumnEditor("ModifierBooleanValue").ContainerControl.Visible = false;
//column = grid.MasterTableView.Columns.FindByUniqueName("ModifierBooleanValue");
//column.Visible = true;
break;
}
}
this doesn't work? anyone has an idea how to hide fields when i press edit?
Thanks,
Vjeran