Запретить получение родительской формы при отклонении дочерней формы - PullRequest
0 голосов
/ 19 февраля 2009

В моем проекте cf.net у меня есть основная «родительская» форма, которая иногда отображает дочернюю форму, например:

Subform A = new SubForm();
A.ShowDialog();
//Get a property from the SubForm and use it.

В моей подчиненной форме содержится несколько ссылок с ярлыками. Событие clickLabel делает что-то и устанавливает результат диалога следующим образом:

this.TextProperty = SomeNeatValue;
this.DialogResult = DialogResult.OK;
//This subform disappears and code resumes on the main form.

Моя основная форма также имеет обработчик MouseUp (), который делает что-то, когда элемент управления не нажимается. Но обработчик MouseUp () основной формы вызывается после того, как linkLabel в SubForm нажата, а SubForm удалена!

Я хочу, чтобы linkLabel из SubForm полностью потреблял клик, а основная форма не получала его, но я не могу найти способ предотвратить это. Кто-нибудь может мне помочь?

1 Ответ

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

Не используйте событие click на ярлыке ссылки. Посмотрите, сможете ли вы найти способ использовать MouseUp вместо щелчка мышью (который, возможно, работает без нажатия мыши).

Некоторое время назад у меня была такая же проблема с KeyUp / Down, и единственный способ, который я мог решить, это обеспечить, чтобы я последовательно использовал одно и то же событие во всем приложении.

...