Asp.NET: UserControl's BubbleEvent не обрабатывается ретранслятором или страницей - PullRequest
2 голосов
/ 11 февраля 2009

У меня есть пользовательский элемент управления внутри повторителя. Пользовательский элемент управления имеет ImageButton, который при нажатии должен вызвать событие на странице, которая будет обрабатывать событие:

//Button onClick event in user control
protected void btnOpenOption_Click(object sender, ImageClickEventArgs e)
{
    RaiseBubbleEvent(sender, e);
}

Ниже приведены два метода на странице. Один для обработки BubbleEvent из дочернего элемента управления, другой для обработки команды ItemEvent ретранслятора:

protected void rptProcessOptions_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    //do something...
}

protected override bool OnBubbleEvent(object source, EventArgs args)
{
    //do something else...
}

Я читал, что обработчик повторителя ItemCommand должен прослушивать BubbleEvent из дочернего элемента управления и впоследствии обрабатывать его, но это не так. Обработчик OnBubbleEvent на странице также не поднимает его. Другими словами, событие просто теряется. Я знаю, что это срабатывает, потому что я вижу это, когда перехожу через отладчик.

До этого я успешно использовал RaiseBubbleEvent, но никогда не использовал ретранслятор, поэтому я не уверен, что то, что я пытаюсь сделать, правильно. Какие-нибудь мысли?

1 Ответ

1 голос
/ 11 февраля 2009

ItemCommand запускается, только если EventArgs является экземпляром RepeaterCommandEventArgs.

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