Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение атрибута без последующего события 
:(
    Опции темы
lightforever
Дата 6.11.2010, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 4.9.2009

Репутация: нет
Всего: нет



Имеется экземляр класса NumericUpDown:
 
Код

NumericUpDown nc;


Изменяю програмно значение экземпляра: 
Код

nc.value=10;


И вслед за этим происходит событие nc_ValueChanged(object sender, EventArgs e), которое определено у используется для непрограмного вызова. 

Как сделать, чтобы при програмном изменении значения экземпляра NumericUpDown(да сосбтвенно говоря и других Control'ов) не возикало события(для NumericUpDown nc_ValueChanged например) ?

PM MAIL   Вверх
Fortnox
Дата 6.11.2010, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



"Отвязать" событие перед установкой значения:
Код

numericUpDown1.ValueChanged -= new EventHandler(numericUpDown1_ValueChanged); /*в скобках имя обработчика события*/


Добавлено через 2 минуты и 57 секунд
Забыл добавить, а после установки значения, снова привязать обработчик.

А если просто не надо выполнять код, который находится в обработчкие, можно так:
Код

        private bool isIgnore;

        private void btnAdd_Click(object sender, EventArgs e)
        {
            isIgnore = true;
            numericUpDown1.Value = 20;
            isIgnore = false;
        }

        private void numericUpDown1_ValueChanged(object sender, EventArgs e)
        {
            if (isIgnore)
                return;
        }

PM MAIL   Вверх
lightforever
Дата 6.11.2010, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 4.9.2009

Репутация: нет
Всего: нет



Спасибо. Сам чтот не додумался сразу))
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0408 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.