2013-05-21 7 views
0

У меня есть кнопка ссылки и набор записей. Когда нажата кнопка ссылки на конкретную запись, я хочу, чтобы идентификатор этой записи передавался в код позади. Это код, который я использовал:Команда Аргумент не работает ссылка

<asp:LinkButton ID="Likes" runat="server" OnCommand="LinkButton1_Click" 
    CommandArgument='<%#Eval("datarow["ID"]") %>' CommandName="Like"> 
    Click</asp:LinkButton> 

и в файле CS я использовал:

protected void LinkButton1_Click(object sender, CommandEventArgs e) 
     { 
     int x = Int32.Parse(e.CommandArgument.ToString()); 
     } 

Но команда аргумент пустой здесь. не могли бы вы мне помочь?

+0

Является ли 'LinkButton' внутри другого элемента управления, такого как' Repeater'? Можете ли вы включить разметку? – greg84

+0

Нет его части таблицы html. Я использовал таблицу html здесь для отображения данных. – Seema

+0

Я думаю, что имя команды вызывает проблему в вашем случае. Вероятно, это сработает, если вы удалите имя команды из разметки. и использовать событие OnClick. –

ответ

0

Вы столкнулись бы с неправильным событием. Я думаю, что ваш LinkButton находится внутри другого элемента управления, как @ greg84 сказал, например, вы можете обрабатывать событие ItemDataBound из DataGrid или Repeater.

protected void Control_ItemDataBound(object sender, ControlItemEventArgs e) 
{ 
    LinkButton Likes = (LinkButton)e.Item.FindContro("Likes"); 
    // Write code here to handle for like click 
    // ... 
} 
+0

Я вижу ваши комментарии. Проблема заключается в вашем ** datarow [ID] **. –

+0

означает? как я его решаю. Id - это имя столбца. как еще я передаю значение позади? – Seema

+0

Не могли бы вы рассказать мне, как передать стоимость? – Seema

Смежные вопросы