如何获取数据表中存在的Datakey和标签的值?
我有一个图像按钮和链接按钮,点击它们,我试图得到,但我做不到。我不想使用Item_Command事件。
怎么办?
谢谢。
如果要在ImageButton/LinkButton
的Click上获取Data Key
值,可以将DataKey值设置为控件的CommandArgument
属性,然后在Click处理程序中可以从CommandArgument
属性获取值。
<asp:ImageButton ID="ibtn" runat="server" CommandArgument='<%# Eval("DataKeyName")%>'
ImageUrl="~/Images/edit.png"></asp:ImageButton>
链接按钮也是如此。
在按钮点击事件中,您可以执行以下操作来获取DataKey和Label(假设它与按钮位于同一控制集合中):
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;