2011-05-25 72 views
0

如何獲得datakey中存在的DataKey和lable的值?通過點擊按鈕獲取Datalist的datakey值和標籤文本?

我有一個圖像按鈕和linkbutton點擊他們我想得到,但我無法做到。 我不想使用Item_Command事件。

怎麼辦?

謝謝。

+0

問題是什麼時候在命令事件你爲什麼不想用? – 2011-05-25 14:20:30

+0

沒有問題,但我試圖通過imageClick事件和linkClick事件。可能嗎??如果是的話請引導我。 – 2011-05-25 17:25:34

+0

你可以得到DataKey值,但是如果你在DataList中有更多的項目,你將無法獲得標籤文本 – 2011-05-25 17:28:18

回答

0

如果你想獲得的點擊ImageButton/LinkButtonData Key值,可以將DataKey值設置爲您控制的CommandArgument屬性,然後單擊處理程序,你可以從CommandArgument屬性的值。

<asp:ImageButton ID="ibtn" runat="server" CommandArgument='<%# Eval("DataKeyName")%>' 
ImageUrl="~/Images/edit.png"></asp:ImageButton> 

linkbutton也一樣。

0

裏面的按鈕單擊事件,您可以執行以下操作來獲得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;