GridView的BUG?
昨天碰到个奇怪的问题,因为权限设置的原因页面GRIDVIEW上的某些列需要不显示出来.
一开始写的代码是这样的:
if(没有权限)
{
gridview1.columns.remove(6);
}
GRIDVIEW的第一列是CHECKBOX
处理也很简单,删除选中的项,没加上面那句前都正常.
但是发现只要remove后所有的FindControl("CheckBox1")都返回null
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox ckb = GridView1.Rows[i].FindControl("CheckBox1") as CheckBox;
if (ckb.Checked)
{
GridView1.DeleteRow(i);
}
}
{
CheckBox ckb = GridView1.Rows[i].FindControl("CheckBox1") as CheckBox;
if (ckb.Checked)
{
GridView1.DeleteRow(i);
}
}
当然,最后用Visible=false了事,不过不知道为什么会这样?


浙公网安备 33010602011771号