最近我下载了FineUI Control来构建网站。它易于使用和构建网站。现在我遇到问题当我使用FIneUI网格控件时。当我在Grid1_RowDataBound()绑定数据时发生数据错位。结果是第一行没有数据,第一行的数据跳转到第二行。 Grid1_RowDataBound()代码:
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
FineUI.CheckBoxField field1 = (FineUI.CheckBoxField)Grid1.FindColumn("CheckBoxField1");
FineUI.LinkButtonField link1 = (FineUI.LinkButtonField)Grid1.FindColumn("linkTY");
FineUI.LinkButtonField link2 = (FineUI.LinkButtonField)Grid1.FindColumn("linkBTY");
object o = Grid1.Rows[e.RowIndex].DataKeys[1].ToString();
object d = Grid1.Rows[e.RowIndex].DataKeys[3].ToString();
bool flag1 = getGYSApply(o);
link1.Text = d.ToString();
Alert.Show(o + "-" + d);
}
答案 0 :(得分:1)
这不是Bug。当您使用RowDataBound()时,每行的数据都已绑定,此时如果更改列的属性,它将完全没有用处。解决此问题的方法是将事件从RowDataBound()更改为PreRowDataBound()。