Простое пользовательское событие ⇐ C#
-
Гость
Простое пользовательское событие
Я пытаюсь изучить пользовательские события и пытался их создать, но, похоже, у меня возникла проблема
Я создал форму, статический класс и пользовательское событие. Чего я пытаюсь достичь, так это того, что когда я нажимаю кнопку, форма вызывает функцию статического класса, а затем func время от времени вызывает событие, чтобы сообщить о текущем статусе. Форма1 будет прослушивать, если событие возникло, и если да, то изменит текст метки1
Вот что у меня есть на данный момент
публичный частичный класс Form1: Форма { прогресс public EventHandler; общедоступная форма1() { ИнициализироватьКомпонент(); прогресс += SetStatus; } частный void SetStatus (отправитель объекта, прогресс e) { label1.Text = e.Status; } частная пустота button1_Click_1 (отправитель объекта, EventArgs e) { ТестКласс.Функ(); } } Файл 2
класс TestClass { публичная статическая пустота Func() { // код, отнимающий много времени Статус отчета // трудоемкий код статус отчета } } Прогресс публичного класса: EventArgs { общественная строка Статус {получить; частный набор; } частный прогресс() {} публичный прогресс (статус строки) { Статус = статус; } } Теперь я не понимаю, как я могу вызвать событие из TestClass, чтобы Form1 мог обрабатывать событие и изменять label.Text
Я пытаюсь изучить пользовательские события и пытался их создать, но, похоже, у меня возникла проблема
Я создал форму, статический класс и пользовательское событие. Чего я пытаюсь достичь, так это того, что когда я нажимаю кнопку, форма вызывает функцию статического класса, а затем func время от времени вызывает событие, чтобы сообщить о текущем статусе. Форма1 будет прослушивать, если событие возникло, и если да, то изменит текст метки1
Вот что у меня есть на данный момент
публичный частичный класс Form1: Форма { прогресс public EventHandler; общедоступная форма1() { ИнициализироватьКомпонент(); прогресс += SetStatus; } частный void SetStatus (отправитель объекта, прогресс e) { label1.Text = e.Status; } частная пустота button1_Click_1 (отправитель объекта, EventArgs e) { ТестКласс.Функ(); } } Файл 2
класс TestClass { публичная статическая пустота Func() { // код, отнимающий много времени Статус отчета // трудоемкий код статус отчета } } Прогресс публичного класса: EventArgs { общественная строка Статус {получить; частный набор; } частный прогресс() {} публичный прогресс (статус строки) { Статус = статус; } } Теперь я не понимаю, как я могу вызвать событие из TestClass, чтобы Form1 мог обрабатывать событие и изменять label.Text
Мобильная версия