Добавление или присоединение обработчика событий OnItemCommand к ASP.NET CheckBox - PullRequest
1 голос
/ 18 октября 2011

Интересно, можно ли добавить, прикрепить или расширить флажок asp.net таким образом, чтобы добавить функциональность OnCommand, CommandName, CommandArgument.

Вкратце я хочу добавить в asp.net CheckBox имеет такую ​​функциональность OnCommand, как Button или LinkButton.

Я хочу установить флажок в шаблоне Repeater ItemTemplate и обработать щелчки флажков в обработчике OnItemCommand.

Ответы [ 3 ]

1 голос
/ 20 октября 2011

Я решил свою проблему с помощью простого трюка.Я создал пользовательский веб-элемент управления с помощью флажка и кнопки невидимой ссылки.

<asp:CheckBox ID="cbSelector" runat="server" AutoPostBack="true" />
<asp:LinkButton ID="btnHiddenCheckBox" runat="server" Visible="false" CommandName="Select"></asp:LinkButton>

в коде позади, я добавил несколько обработчиков событий ...

  protected void Page_Load(object sender, EventArgs e)
  {
     cbSelector.CheckedChanged += new EventHandler(cbSelector_CheckedChanged);
  }

  void cbSelector_CheckedChanged(object sender, EventArgs e)
  {
      btnHiddenCheckBox.CommandName = "Select";
      btnHiddenCheckBox.CommandArgument = Convert.ToString(cbSelector.Checked);
      ((IPostBackEventHandler)btnHiddenCheckBox).RaisePostBackEvent(null);
  }

и программно вызвал событие Clickс параметрами и все работает.

0 голосов
/ 18 октября 2011

Патрик Я собираюсь предложить вам нечто совершенно иное, используйте JQuery и сделайте это через Ajax, чтобы предоставить пользователям более плавный опыт.

здесь есть хорошая статья с пошаговыми инструкциями: ASP.Net CheckBox и JQuery

все лучше, чем CheckBox или Button с AutoPostBack, установленным на истинное в настоящее время в 2011, 2012, скоро; -)

0 голосов
/ 18 октября 2011

То же самое может быть достигнуто с помощью события OnCheckChanged.

Вы можете узнать, что RepeaterItem должно иметь доступ к элементам управления в том же RepeaterItem


В качестве альтернативы, см. Этот ТА вопрос для решения о том, как использовать OnItemCommand для CheckBox:

Флажок OnClick / ItemCommand в Repeater или DataList

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...