DataGrid动态添加按钮问题(十万火急)
我在DataGrid中有一个图像按钮列,还有一个CheckBox列.
我是在DataGrid的ItemCreated事件中
通过判断e.Item.DataItem(每个项对应数据字段(如ReadFlag))来判断是否应该添加图像按钮的不同图像标志.
代码如下:
void MessageGrid_ItemCreated(sender,e)
{
if((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
{
DataRowView rowView = (DataRowView)e.Item.DataItem;
ImageButton btnSign = (ImageButton)e.Item.FindControl("btnSign");
if((int)rowView.Row["SystemFlag"] == 1)
{
btnSign.ImageUrl= "../Images/sign_yiduyoujian.gif";
}
else
{
btnSign.ImageUrl= "../Images/sign_y12ian.gif";
}
}
问题出来了,
当我客户段选中一个CheckBox后,然后点击删除按钮,进入处理回发处理.而DataGrid在回发状态下是通过视图来建立控件层次(必须使用回发,这样才能获取选中CheckBox项的索引).而此时在ItemCreated事件处理函数中e.Item.DataItem为null(因为没有重新绑定数据源,是视图),因此就不能动态为按钮创建图像.
请教方案: