Вы должны использовать события «Проверка» и «Проверка» для проверки ввода пользователя.
Затем, если пользователь перейдет к другому элементу управления «A», а элемент управления «A» имеет свойство «CausesValidating», установленное в значение «true» (его значение по умолчанию), произойдет событие «Проверка» и «Проверка».
Меню также имеет свойство "CuasesValidating".
Edit:
Извините, я забыл, что "CuasesValidating" в полосе меню - это наша функциональность, а не встроенная.
Но проверка для проверки довольно проста:
private void menuStrip1_MenuActivate( object sender, EventArgs e ) {
bool ret = this.Validate( false );
if ( false == ret ) {
// user's input is wrong
}
}
Пользователь может использовать любой ContainerControl вместо «this», если вы хотите проверить проверку в другом элементе управления, кроме формы «this». Например, в дочернем окне MDI.