FineUI 官方论坛
标题:
【非BUG】Grid的PreRowDataBound出错
[打印本页]
作者:
550560320
时间:
2016-5-9 20:15
标题:
【非BUG】Grid的PreRowDataBound出错
在AppBox User.aspx 中原代码如下
protected void Grid1_PreRowDataBound(object sender, FineUI.GridPreRowEventArgs e)
{
User user = e.DataItem as User;
// 不能删除超级管理员
if (user.Name == "admin")
{
FineUI.LinkButtonField deleteField = Grid1.FindColumn("deleteField") as FineUI.LinkButtonField;
deleteField.Enabled = false;
deleteField.ToolTip = "不能删除超级管理员!";
}
}
这个语句会直接把 排在admin 后边的 deleteField.Enabled 全部设置成 false , 尽管不是 user.Name == "admin" 。
但 排在admin 前边的 都能正常设置成 true 。 就是说同一个方法,在 user.Name == "admin" 为条件设置成 false后,产生前后不同的两结果,故认为是BUG。
作者:
sanshi
时间:
2016-5-10 10:21
这个不是BUG,你给的解决办法就完全正确。
这里要保证逻辑的完备性,因为在PreDataBound操作列属性,其实是同一个列,所以如果在上一行修改了属性,下一行还要还原。官网示例:
http://fineui.com/demo/#/demo/grid/grid_prerowdatabound.aspx
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4