отключить или отменить событие со списком SelectedIndexChanged с кодом?

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


person Mostafa    schedule 21.01.2014    source источник


Ответы (4)


ComboBox comboBox = new  ComboBox();

Подпишитесь на событие SelectedIndexChanged

comboBox.SelectedIndexChanged += comboBox_SelectedIndexChanged;

Используйте приведенный ниже код, чтобы отменить подписку на событие SelectedIndexChanged.

comboBox.SelectedIndexChanged -= comboBox_SelectedIndexChanged;
person Ramashankar    schedule 21.01.2014

Есть несколько вариантов

  1. Вы можете временно отписаться от мероприятия
  2. Вы можете сохранить флаг, чтобы проверить, нужно ли вам его обрабатывать или нет.
person Sriram Sakthivel    schedule 21.01.2014

  1. Вы можете отключить/включить поле со списком, на основе нажатия кнопки
  2. Вы можете отказаться от подписки на SelectedIndexChanged, как сказал @Ramashankar
  3. Поддерживайте флаг, чтобы проверить, должно ли событие быть выполнено или нет
person andy    schedule 21.01.2014

Вы можете отказаться от подписки на события, как показано ниже, нажав на кнопку:

combo1.SelectedIndexChanged -= combo1_SelectedIndexChanged;
person Prasanna    schedule 21.01.2014