我目前在 ListView 的 ItemTemplate 中有一个 LinkButton。 ListView 中的每个按钮都应调用相同的单击事件处理程序。但是,在处理程序中我需要知道单击了哪个按钮。这可能吗?
<asp:ListView runat="server" ID="lvKeyGroup">
<LayoutTemplate>
<table>
<asp:Placeholder runat="server" ID="itemPlaceholder" />
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td>[<asp:LinkButton runat="server" Text="Remove" OnClick="lbRemoveAuthGroup_Click" />]</td>
<td><%# Eval("AuthorizationGroup") %></td>
</tr>
</ItemTemplate>
</asp:ListView>
Add CommandName
财产给每个人LinkButton
并处理 ListView 的ItemCommand
event.
你还需要设置ListView的DataKeys
属性到您的数据源对象唯一标识符名称。您可以获得所选行的数据键:
void ListView1_ItemCommand(object sender, ListViewCommandEventArgs e)
{
// in assumption that your data item's unique identifier type is Int32
var dataKey = (int)ListView1.DataKeys[e.Item.DataItemIndex].Value;
switch(e.CommandName)
{
case "Remove":
// your code here
break;
}
}
请点击此链接了解 ListView 控件概述:http://msdn.microsoft.com/en-us/library/bb398790.aspx
另外,请观看此视频:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)