кнопка Link On On Command проблема - PullRequest
       16

кнопка Link On On Command проблема

1 голос
/ 27 октября 2010

Я использую 2 кнопки ссылки внутри отдельных серверных элементов управления dataitem на моей веб-странице asp.net

<asp:LinkButton ID="Item1" runat="server"  CommandName="first"  
      OnCommand="Item1_Onclick" CommandArgument="<%# Container.DataItem %`>"  
      Text="<%# Container.DataItem %`>" >    
</asp:LinkButton`>

и

<asp:LinkButton ID="Item2" runat="server"  CommandName="second"  
      OnCommand="Item2_Onclick" CommandArgument="<%# Container.DataItem %`>"  
      Text="<%# Container.DataItem %`>" >    
</asp:LinkButton`>

Когда я извлекаю имя команды внутри c # как

e.CommandArgument.ToString().Trim();    

это дает мне правильное имя, однако команда arugument

e.CommandArgument.ToString().Trim();  

для item2 - это не то, что я ожидаю.Это не элемент item1, а тот, который я изначально установил в качестве источника данных для элемента управления datalist элемента item2.Это не дает мне последнее строковое значение dataitem, которое я ожидаю от кнопки ссылки item2.В чем может быть проблема?Где я не прав?

Кроме того, событие для item2 запускается ТОЛЬКО в первый раз, а не после этого?Есть ли какая-то глупая ошибка, которую я делаю?

Ответы [ 2 ]

1 голос
/ 27 октября 2010

У меня проблема.Я не включил if (! IsPostBack) в качестве первого утверждения в моем пустом методе Page_Load !!Это было глупо с моей стороны.В любом случае, спасибо за ваше время и идеи.

0 голосов
/ 27 октября 2010

В аргументе команды вы не предоставляете имя свойства в элементе данных

"<%# Container.DataItem.ProeprtyName %`>"

Скажите, что ваш источник данных является объектом пользователя, и вам нужен идентификатор пользователя в качестве аргумента команды, это должно быть <%# Container.DataItem.UserID%>`

...