Обработка событий в формах
Узнайте, как обрабатывать взаимодействия с пользователем, такие как нажатия кнопок и отправка форм
«Обработка событий в формах» — бесплатный урок C# Academy на CoddyKit. Это урок 3 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 3 уроков всего.
Что такое события?
События — это действия или происшествия, на которые может реагировать программа, например нажатие кнопки, движение мыши или ввод текста. Обработка событий позволяет определить, как приложение должно реагировать на эти действия.
Главное: Windows Forms использует событийное программирование для реакции на действия пользователя.

Понимание событий
Что такое события?
События — это действия или происшествия, на которые может реагировать программа, например нажатие кнопки, движение мыши или ввод текста. Обработка событий позволяет определить, как приложение должно реагировать на эти действия.
Главное: Windows Forms использует событийное программирование для реакции на действия пользователя.
Подписка на события
Чтобы обработать событие, необходимо подписаться на него, назначив метод (обработчик события), который будет выполняться при возникновении события. Пример:
using System;
using System.Windows.Forms;
class Program : Form {
static void Main() {
Application.Run(new Program());
}
public Program() {
Button button = new Button() {
Text = "Click Me",
Left = 100,
Top = 50
};
button.Click += Button_Click;
Controls.Add(button);
}
private void Button_Click(object sender, EventArgs e) {
MessageBox.Show("Button was clicked!");
}
}
Распространенные события
Вот некоторые распространенные события в Windows Forms:
- Click: Возникает, когда нажимают кнопку или другой элемент управления, поддерживающий нажатие.
- TextChanged: Возникает, когда изменяется текст в текстовом поле.
- MouseEnter: Возникает, когда указатель мыши входит в область элемента управления.
- KeyDown: Возникает, когда при фокусе на элементе управления нажимают клавишу.
Главное: У каждого события есть определенное назначение, и можно использовать несколько событий, чтобы повысить интерактивность.
Добавление обработчиков событий в конструкторе
Добавлять обработчики событий можно с помощью конструктора Windows Forms:
- Выберите элемент управления в конструкторе.
- Откройте окно свойств и перейдите на вкладку событий (значок молнии).
- Дважды щелкните нужное событие (например,
Click), чтобы сгенерировать обработчик события в коде.
Совет: Такой способ ускоряет добавление обработчиков событий для нескольких элементов управления.
Аргументы событий
Обработчики событий часто содержат параметр EventArgs, который предоставляет дополнительную информацию о событии. Пример:
using System;
using System.Windows.Forms;
class Program : Form {
static void Main() {
Application.Run(new Program());
}
public Program() {
TextBox textBox = new TextBox() {
Left = 50,
Top = 50,
Width = 200
};
textBox.TextChanged += TextBox_TextChanged;
Controls.Add(textBox);
}
private void TextBox_TextChanged(object sender, EventArgs e) {
TextBox textBox = (TextBox)sender;
Console.WriteLine("Text changed to: " + textBox.Text);
}
}
Практическое задание
Создайте приложение Windows Forms со следующими элементами:
- Кнопка, которая отображает сообщение при нажатии.
- Текстовое поле, которое записывает изменения текста в консоль.
- Метка, которая обновляется, когда указатель мыши входит в определенную область.
Пример:
using System;
using System.Windows.Forms;
class Program : Form {
Label label;
static void Main() {
Application.Run(new Program());
}
public Program() {
Button button = new Button() {
Text = "Click Me",
Left = 50,
Top = 50
};
button.Click += (sender, e) => MessageBox.Show("Button clicked!");
Controls.Add(button);
TextBox textBox = new TextBox() {
Left = 50,
Top = 100,
Width = 200
};
textBox.TextChanged += (sender, e) => Console.WriteLine("Text changed to: " + textBox.Text);
Controls.Add(textBox);
label = new Label() {
Text = "Hover over me",
Left = 50,
Top = 150,
Width = 150
};
label.MouseEnter += Label_MouseEnter;
Controls.Add(label);
}
private void Label_MouseEnter(object sender, EventArgs e) {
label.Text = "Mouse is here!";
}
}
Рекомендации по обработке событий
Вот несколько рекомендаций:
- Используйте понятные имена для методов обработчиков событий.
- Не помещайте слишком сложную логику непосредственно в обработчики событий; вместо этого вызывайте другие методы.
- Отключайте обработчики событий, когда они больше не нужны, чтобы предотвратить утечки памяти.
Совет: Тестируйте обработчики событий, чтобы убедиться, что во всех сценариях они работают ожидаемым образом.
Отличная работа!
Поздравляем! Вы научились обрабатывать события в Windows Forms, чтобы сделать приложения интерактивными. На следующем уроке мы создадим простое приложение-калькулятор и применим полученные знания. Продолжайте программировать!
Нажмите Продолжить, чтобы перейти к следующему уроку.

Изучай C# с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 93
- Уроки
- 346
Часто задаваемые вопросы
Урок «Обработка событий в формах» бесплатный?
Да — полный текст урока «Обработка событий в формах» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 3 уроков всего.
Чему я научусь в уроке «Обработка событий в формах»?
Узнайте, как обрабатывать взаимодействия с пользователем, такие как нажатия кнопок и отправка форм Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать C# Academy?
Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 3.
Сколько времени занимает урок «Обработка событий в формах»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке C# Academy?
Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в Windows Forms
- Проектирование пользовательских интерфейсов
- Обработка событий в формах