1

触发按钮命令时如何访问我的中继器数据项?我可以看到 DataItem 返回 null。

有没有可能?

4

2 回答 2

1

在按钮的 CommandArgument 中设置对象的 id。然后在按钮命令事件中,您可以从 e.CommandArgument 访问 id。然后,您可以查询域/数据库以获取数据。

于 2012-05-31T19:37:07.687 回答
0

您应该确保它不是标题行,您看到的DataItemnull.

您可以通过使用if语句封装您的代码来做到这一点,只需检查是否DataItem不是null或者它是否属于您用于将数据分配给该的指定类型Repeater

或者,您可以按照此处所述检查项目的ListItemType :http: //msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.repeater.itemdatabound.aspx或此处:ASP.Net 中继器项目。数据项为空

然后,您应该能够通过访问对象来访问与ItemDataBound事件中的每个项目关联的数据。e.Item.DataItem

如果您想访问从控件绑定调用的另一个事件分配给转发器的数据(即像您提到的那样单击按钮),您可以CommandArgument为每个项目和句柄使用并为其分配适当的值ButtonCommand

于 2012-05-31T19:35:25.683 回答