我们正在转换UltraWebGrid
为WebDataGrid
Infragistics control v20.2。我们有一个ImageButton
内部:TemplateDataField
WebDataGrid
<ig:WebDataGrid ID="WebDataGrid1" runat="server" Height="250px" Width="800px" BorderWidth="4px" BorderColor="White"
AutoGenerateColumns="false" OnDataBound="WebDataGrid1_DataBound" EnableAjax="false" EnableDataViewState="true"
DataSourceID="ObjectDataSource1" >
<Columns>
<ig:TemplateDataField Key="EditForm" >
<ItemTemplate >
<asp:ImageButton ID="Button2" runat="server" Width="16px" Height="16px" BackColor="Navy" OnClick="OnClickCellButtonASPform" ImageAlign="AbsMiddle"
ToolTip="Edit Form" ImageUrl="~/EIS/MaintainEmployeeProfile/MaintainEmployeeRating/images/page_edit.gif" />
</ItemTemplate>
<Header Text="Edit Form">
</Header>
</ig:TemplateDataField>
....
我们无法在 C# 后面的代码中访问事件ImageButton
控制。OnDataBound
这是代码:
for (int i = 0; i < WebDataGrid1.Rows.Count; i++)
{
ImageButton b = (ImageButton)WebDataGrid1.Rows[i].Items.FindItemByKey("EditForm").FindControl("Button2");
b.Enabled = true;
b.BackColor = System.Drawing.Color.Gray;
....
}
我们得到的错误是:
你调用的对象是空的。
我该如何解决这个问题?