C # не хочу, чтобы вызвать событие - PullRequest
1 голос
/ 05 ноября 2010

У меня есть событие, которое отслеживает изменения в представлении данных.Я не хочу, чтобы это срабатывало, когда сетка данных связана в первый раз, и ее настройка завершена.Можно ли отказаться от запуска события при определенных обстоятельствах?

Спасибо.

Ответы [ 4 ]

3 голосов
/ 05 ноября 2010

Вы можете проверить эти обстоятельства в своем обработчике событий и выбрать ничего не делать.

Кроме того, вы можете создать событие, которое ничего не делает, кроме проверки привязки и полной конфигурации, а когда оно завершено, удаляет себя и добавляет обработчик событий, который делает то, что вы обычно хотите.

2 голосов
/ 05 ноября 2010

Вы можете добавить обработчик для события программно в некоторый момент. В вашем случае после первого свяжите данные.

DataGrid.yourEvent + = новый EventHandler (event_Handler);

Для этого вам не нужно проверять булеву переменную

2 голосов
/ 05 ноября 2010

У меня обычно есть личная переменная bool _isLoading в форме. Когда я выполняю начальную привязку данных, я устанавливаю _isLoading в значение true и устанавливаю значение false, как только будет сделан выбор данных. Затем в своих событиях я проверяю, истинно ли _isLoading, и если это так, я просто возвращаюсь из метода события, ничего не делая.

0 голосов
/ 05 ноября 2010

Вы можете установить логическое поле в своей форме при первой установке источника данных.

В случае, вы можете return;, если поле true.

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