有谁能告诉我这部分发生的事情?为什么让物品看不见?
protected void rgStateTax_PreRender( object sender, EventArgs e )
{
if( rgStateTax.MasterTableView.IsItemInserted )
{
foreach( GridItem item in rgStateTax.Items )
{
item.Visible = false;
}
}
if( rgStateTax.EditItems.Count > 0 )
{
foreach( GridDataItem item in rgStateTax.Items )
{
if( item != rgStateTax.EditItems[0] )
{
item.Visible = false;
}
}
}
}
这里rgStateTax是rad grid,而PreRender是页面实际显示在屏幕上之前的事件,对吗?
答案 0 :(得分:0)
是的,在为页面呈现控件之前调用PreRender。
这段代码只是循环遍历网格中的几乎所有项目并使其不可见。
if( rgStateTax.MasterTableView.IsItemInserted )
检查项目是否已插入网格。
foreach( GridItem item in rgStateTax.Items )
这会循环遍历radgrid中的每个项目。
item.Visible = false;
这会将每个项目设置为不可见。
至于下一部分:
if( rgStateTax.EditItems.Count > 0 )
这将检查编辑模式中是否有任何网格项。
foreach( GridDataItem item in rgStateTax.Items )
这会循环遍历radgrid中的每个项目(无论每个项目是否处于编辑模式)。
if( item != rgStateTax.EditItems[0] )
这会检查当前项目是否不是编辑模式中的第一项(因此我们为除了一项以外的所有项目输入此项目。
item.Visible = false;
这会将每个项目设置为不可见。
这就是发生的事情。
答案 1 :(得分:0)
你可能想要
if(!item.Edit){item.Visible = false;}