【发布时间】:2011-08-17 09:44:51
【问题描述】:
我有一个gridview,我以编程方式设置数据源并将其数据绑定到对象集合。对于创建的每一行,然后我在字段中使用不同的方法从对象中提取相关信息,如下所示:
<asp:TemplateField HeaderText="Aliases">
<ItemTemplate>
<%# ( (MyItem)Container.DataItem).Aliases.ToString() %>
</ItemTemplate>
</asp:TemplateField>
我的问题是,在OnRowDeleting 方法中,我希望能够使用例如MyGridView.Rows[e.RowIndex].DataItem 或其他方式访问DataItem。但我找不到如何配置Gridview 以保留DataItem。 是否可以访问使用的DataItem?我将如何配置它?如果无法访问,我可以访问方法绑定的值吗?还是我必须使用计划 B 并将数据源对象集合重写为数据表,然后使用 datakeysnames?
【问题讨论】:
-
为什么不能使用 var dataItem = MyGridView.Rows[e.RowIndex].DataItem;这将起作用。
-
我尝试使用它,但我得到了 null。
-
MyItem 集合是什么?类型和字段?
-
@Teletha, var row = MyGridView.Rows[e.RowIndex];然后你应该有一个单元格列表。您可以从行中提取单元格。
-
@Jethro 它是空的。也许这是一个回发问题?
标签: c# asp.net gridview dataitem