如何获得datakey中存在的DataKey和lable的值?通过点击按钮获取Datalist的datakey值和标签文本?
我有一个图像按钮和linkbutton点击他们我想得到,但我无法做到。 我不想使用Item_Command事件。
怎么办?
谢谢。
如何获得datakey中存在的DataKey和lable的值?通过点击按钮获取Datalist的datakey值和标签文本?
我有一个图像按钮和linkbutton点击他们我想得到,但我无法做到。 我不想使用Item_Command事件。
怎么办?
谢谢。
如果你想获得的点击ImageButton/LinkButton
的Data Key
值,可以将DataKey值设置为您控制的CommandArgument
属性,然后单击处理程序,你可以从CommandArgument
属性的值。
<asp:ImageButton ID="ibtn" runat="server" CommandArgument='<%# Eval("DataKeyName")%>'
ImageUrl="~/Images/edit.png"></asp:ImageButton>
linkbutton也一样。
里面的按钮单击事件,您可以执行以下操作来获得DataKey和标签(假设它是相同的控制集合中的按钮):
var button = sender as Button;
if (button == null) return;
var dataListItem = button.NamingContainer as DataListItem;
if (dataListItem == null) return;
var currentKey = DataList1.DataKeys[dataListItem.ItemIndex];
var myLabel = button.Parent.Controls.Cast<Control>().FirstOrDefault(x => x.ID == "testLabel") as Label;
if (myLabel == null) return;
var myLabelText = myLabel.Text;
问题是什么时候在命令事件你为什么不想用? – 2011-05-25 14:20:30
没有问题,但我试图通过imageClick事件和linkClick事件。可能吗??如果是的话请引导我。 – 2011-05-25 17:25:34
你可以得到DataKey值,但是如果你在DataList中有更多的项目,你将无法获得标签文本 – 2011-05-25 17:28:18