Пустое значение CommandEventArgs в обработчике события OnCommand для пользовательского WebControl, реализующего IButtonControl - PullRequest
2 голосов
/ 29 августа 2010

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

У меня проблема в следующем: Я разработал и разработал WebControl, который состоит из простого набора элементов, которые в совокупности самым простым способом определяют пользовательскую кнопку. Этот элемент управления я бы хотел использовать в своем веб-приложении вместо элементов управления Button и LinkButton (причины в основном зависят от графических и визуальных функций). Чтобы веб-контроль вел себя как кнопка, он также реализует интерфейс IButtonControl, так что все элементы, необходимые платформе для обработки событий и тому подобного, хорошо представлены. Ну, эта кнопка, которую я назвал BoxButton , отлично работает каждый раз, когда ее используют, вместо одного.

Извините за долгую прелюдию, теперь мы можем перейти к реальной проблеме: На странице у меня есть ListView и в ListView у меня включен InsertItemTemplate. Этот шаблон вставки отлично работает, когда OnItemInsert запускается нажатием кнопки внутри шаблона (кнопка, элемент управления обычной кнопки). Ну, я конечно хотел разместить мою BoxButton вместо обычной. Когда я делаю это, у меня возникает проблема. Функция обработчика такова:

protected void Insert_BoxButton_Command(object sender, CommandEventArgs e) {
    if (e.CommandName == "Insert") {
        // Do something     
    }
}

Как правило, объект e может предоставлять информацию разработчику, чтобы найти все данные, которые будут вставлены. Эти данные доступны, когда я использую обычную кнопку, но при использовании BoxButton это ноль! Что ж, вы могли бы сказать мне, что, когда я определил свой BoxButton, реализующий интерфейсы IButtonControl, мне пришлось справиться с обоими двумя событиями в интерфейсе (воздействуя на нажатие кнопок: Click and Command) и справиться с проблемой предоставления CommandEventArgs. Но как это сделать? Есть ли решение моей проблемы? Как я могу управлять событиями? Я чувствую, что, вероятно, это очень низкая проблема программирования ... может быть, есть много дел. Заранее спасибо за помощь. Andry

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