Отключить событие Inherited UserControl - PullRequest
0 голосов
/ 19 февраля 2012

(Привет всем)

Я создал новый пользовательский элемент управления, наследуемый от tabcontrol, и переопределил несколько событий.

Когда я переключаюсь с одной вкладки на другую, происходит следующее событие:

1) OnDeselecting(TabControlCancelEventArgs e)
2) OnMouseDown(MouseEventArgs e)
3) OnMouseClick(MouseEventArgs e)
4) OnMouseUp(MouseEventArgs e)

Как я могу временно отключить 2) и 3) при срабатывании 1)

Ваша помощь будет принята с благодарностью!

PS:

Мне нужны все эти события, и в настоящее время я использую переменную bool для грязной работы.

.net 3.5+ VS2008 + Win7 64

1 Ответ

2 голосов
/ 19 февраля 2012

Попробуйте это в своем событии OnDeselecting

try
{
    tab.MouseDown -= new MouseEventHandler(this.YourMouseDownEvent);
    tab.MouseClick -= new MouseEventHandler(this.YourMouseClickEvent);
    ..... // your code here.....
}
finally
{
    tab.MouseDown += new MouseEventHandler(this.YourMouseDownEvent);
    tab.MouseClick += new MouseEventHandler(this.YourMouseClickEvent);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...