Как вызвать событие проверки с помощью нажатия клавиши - PullRequest
0 голосов
/ 15 июня 2010

Я хочу поднять:

private void txtbox_startdate_Validating(object sender, System.ComponentModel.CancelEventArgs e)
    {}

Функция из события нажатия клавиши. Событие отпуска выглядит так:

private void txtbox_startdate_Leave(object sender, EventArgs e)
    {}

Проблема, конечно, в том, если я попытаюсь назвать это так:

txtbox_startdate_Validating(sender, e)

Возникает ошибка, потому что в этом случае e - это EventArg s, тогда как функция проверки требует System.ComponentModel.CancelEventArgs, и как мне преобразовать EventArgs в System.ComponentModel.CancelEventArgs или создать так, чтобы можно вызвать мою функцию проверки?

Ответы [ 2 ]

0 голосов
/ 13 января 2012

См. MSDN:

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.validating.aspx

Вам не нужно вызывать событие txtbox_startdate_Validating (или любой другой элемент управления с проверяющим событием) из события txtbox_startdate_Leave, поскольку это порядок перехода событий от одного к другому в рамках проекта.

0 голосов
/ 15 июня 2010

обычно, каким бы ни был валидатор, вы можете просто вызвать Validate () вместо него.

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.basevalidator.validate.aspx

В противном случае, просто «создайте» отмену событий самостоятельно - это не особенное, конструкторы общедоступны.

http://msdn.microsoft.com/en-us/library/system.componentmodel.canceleventargs.canceleventargs.aspx

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