События в C#

Автор: Topol Пятница, Июнь 8th, 2012 Нет комментариев

Рубрика: Программирование

Событие – это реакция объекта совершения над ним действия: например, наведения или щелчок мыши, ввод с клавиатуры. Событие в C# (си шарп) может быть так же реакцией на действие системы или определенный результат выполнения кода. Событие призвано уведомить класс, другой объект или пользователя об этом действии. Объект, вызывающий событие, называется отправителем («издателем»). Объект, который реагирует на него, называется получателем («подписчиком»). Для правильного выполнения события должны быть описаны оба этих объекта.

С точки зрения программы событие представляет собой блок кода, который будет выполняться при совершении определенного действия. Этот код будет называться обработкой события. Базовым классом для событий является встроенный класс EventArgs.
Создавая windows-приложения, мы постоянно сталкиваемся с обработкой событий, связанных с элементами формы. Например, при добавлении кода, который будет выполняться по щелчку на кнопке (button), автоматически формируется событие Click. Традиционно вы делали это, дважды щелкая на button в окне визуального конструктора формы. При этом появлялся такой каркас, в который списывался нужный код – то есть код, который будет выполняться по нажатию кнопки:
private void button1_Click(object sender, EventArgs e)
{

}

Перед нами ни то иное, как метод. Метод, отвечающий за событие, называется обработчиком события. У этого метода существует два обязательных параметра: object sender и System.EventArgs e. Эти параметры создаются автоматически. Sender – это ссылка на объект, вызвавший событие; e – объект, с вязанный с событием: ссылаясь на него, можно получить его свойства, например, расположение мыши или значения данных. Назначить событие элементу формы можно, дважды щелкнув на нее в окне конструктора формы. Кроме того, для каждого выбранного элемента вверху окна «Свойства» есть значок «События» (в виде молнии) — там можно выбрать требуемое событие. Если дважды щелкнуть на нужный пункт, автоматически сгенерируется каркас — пустой метод обработчика событий, который заполнит программист. То есть он укажет, что именно будет происходить по нажатию кнопки. Код, необходимый для подписки на событие, генерируется автоматически:
button.Click += new EventHandler(this.Button_Click);

Источник: cisharp.com

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты