Добавление usercontrol дважды в asp.net - PullRequest
1 голос
/ 30 сентября 2010

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

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

1 Ответ

0 голосов
/ 30 сентября 2010

Если вы изменяете текст в самом пользовательском элементе управления, и происходит обратная передача из-за нажатия какой-либо кнопки в одном из экземпляров, только этим элементом управления будет манипулировать.Это просто простое поведение по умолчанию.

Если вы хотите, чтобы другие элементы управления соответствовали, вам нужно выставить событие, вызвать его в событии нажатия кнопки на пользовательском элементе управления и подписать базовую страницу на это событие, чтобы оно оставалосьв элементе управления и может установить какое-либо свойство во всех экземплярах пользовательского элемента управления для установки определенного текста.

Итак:

Button click  
-> postback  
 -> user control 1 captures click event 
  -> user control 1 raises an event 

=> webform captures this event 
 -> webform sets property of user controls 1 & 2 
   (which are both instances of the same user control you created) 
   which show the text according to what's passed in via the property.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...