Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2010, 11:28   #1
boris-blade
Пользователь
 
Регистрация: 18.12.2009
Сообщений: 53
По умолчанию правильно ли я объявляю событие?

Код:
 class Table
    {
        public Table(Point TopLeftCornerAtScreenShot)
        {
            ...
            this.ButtonChanged += new EventHandler(ButtonChangedEvent);
//или так?:
//this.ButtonChangedEvent += new EventHandler(ButtonChanged);
            ...
        }
        ...
        public event EventHandler ButtonChangedEvent;

        int recognizedbutton;
        public int RecognizedButton
        {
            get { return recognizedbutton; }
            set
            {
                if (ButtonChangedEvent != null
                    && value != recognizedbutton)
                {
                    recognizedbutton = value;
                    ButtonChangedEvent(this, new EventArgs());
                }
            }

        public void ButtonChanged(Object sender, EventArgs args)
        {
            if (RecognizedButton == 10)
            {
                return;
            }
            ...
        }
        }
boris-blade вне форума Ответить с цитированием
Старый 01.04.2010, 11:45   #2
ildcbj
Пользователь
 
Регистрация: 01.04.2010
Сообщений: 11
По умолчанию

Надо полагать что закоментированый код как раз правильный. Так как конструктор ЭвентХендлера принимает параметром ссылку на метод, а не событие. Но я могу ошибаться.

Последний раз редактировалось ildcbj; 01.04.2010 в 11:51.
ildcbj вне форума Ответить с цитированием
Старый 02.04.2010, 00:03   #3
m0nax
Форумчанин
 
Аватар для m0nax
 
Регистрация: 25.09.2009
Сообщений: 525
По умолчанию

Цитата:
ButtonChangedEvent(this, new EventArgs());
вместо new EventArgs() лучше использовать EventArgs.Empty

а в целом да, закоменченный вариант правильный
m0nax вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Событие TListBox HTL Компоненты Delphi 2 28.01.2010 21:27
Событие vitamin.rulez Помощь студентам 7 10.02.2009 11:46
Событие terminadoor Общие вопросы Delphi 13 17.07.2008 09:25
Событие maha Общие вопросы Delphi 6 18.06.2008 18:53