Создание Windows-приложений на основе Visual C#


           

С помощью событий приложения Windows


С помощью событий приложения Windows получают уведомления о том, что что-то произошло. Например, при нажатии на кнопку мыши приложение, в окне которого вы произвели это действие, будет уведомлено об этом событии. То же самое происходит, когда вы делаете что-то с помощью клавиатуры. Событийная модель стала основой современного программирования. Обработчик события реализуется на языке С#, как правило, в виде делегата.
Создайте новое консольное приложение и назовите его Event (Событие). Рассмотрим листинг этого приложения:
using System;
namespace Event { //Объявляем делегат Mydelegate delegate void Mydelegate(); //Создаем класс Button, в котором будет находится событие и метод для него class Button { // Объявляем событие Sobitie на основе делегата public event Mydelegate Sobitie; //Cоздаем метод для события, который просто будет обращаться к событию public void MetoddlyaSobitiya()
{ //Можно вставить проверку наличия события //if (Sobitie !=null) Sobitie(); }
class Class1 { [STAThread] static void Main(string[] args) { // Создаем экземпляр btn класса Button Button btn = new Button(); //привязываем обработчика для события Sobitie экземпляра btn. Когда в //скобках укажете // Metodobrabotchik, нажмите дважды клавишу Tab btn.Sobitie += new Mydelegate(Metodobrabotchik); //Развернутая запись строки выше //btn.Sobitie = btn.Sobitie + new Mydelegate(Metoddlyadelegata); //вызываем метод для события btn.MetoddlyaSobitiya(); } // Создаем метод-обработчик, если среда сгенерировала его сама — добавляем //строку вывода private static void Metodobrabotchik () { Console.WriteLine("Произошло событие"); } } } }
Листинг 1.6.
Сначала мы в строке
delegate void Mydelegate();
объявляем делегат. Параметров у него нет (хотя могут и быть), тип — void.
Затем мы объявляем класс Button, внутри которого объявляем событие Sobitie (имя произвольное):
... public event Mydelegate Sobitie; ...
Синтаксис следующий: модификатор доступа (здесь — public), затем ключевое слово event, потом имя делегата, на основании которого мы создаем наше событие (здесь Mydelegate) и, наконец, имя события (Sobitie). Обратите внимание, что событие появится на вкладке Class View (рис. 1.36).

Рис. 1.36.  Событие в окне Class View. Значок события имеет характерный вид молнии
Далее в нашем классе с событиями мы в некотором методе это событие вызываем:

Содержание  Назад  Вперед





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