C#
Как создать форму в си шарп: первый Windows Forms пример
Чтобы создать форму в C#, используйте шаблон Windows Forms App в Visual Studio. Он создаст проект с классом формы, дизайнером интерфейса и запуском приложения через Application.Run. Для первого примера достаточно добавить Label, Button и написать обработчик клика, который меняет текст на форме
Создание проекта
Откройте Visual Studio и выберите Create a new project. Найдите Windows Forms App. Если вариантов несколько, выбирайте C# и современный .NET, если учебный курс не требует именно .NET Framework
После создания проекта Visual Studio откроет форму в дизайнере. Обычно она называется Form1. Это окно вашего приложения. На него можно перетаскивать элементы из Toolbox: кнопки, подписи, поля ввода, списки
Первая кнопка
Добавьте на форму:
Button;Label.
Измените текст кнопки на «Показать сообщение». Для этого выделите кнопку и найдите свойство Text в окне Properties
Дважды щелкните по кнопке в дизайнере. Visual Studio создаст обработчик события:
private void button1_Click(object sender, EventArgs e)
{
}
Внутрь добавьте:
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "Кнопка нажата";
}
Запустите проект. При нажатии на кнопку текст на форме должен измениться
Что такое Form
Форма в Windows Forms — это класс, который наследуется от Form. У него есть свойства: заголовок, размер, положение, набор элементов управления. Если открыть код формы, можно увидеть примерно такую структуру:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
InitializeComponent() создает элементы, которые вы добавили в дизайнере. Удалять этот вызов не нужно: без него форма откроется пустой или приложение сломается
Как запускается форма
В проекте есть файл Program.cs. В нем обычно есть запуск приложения:
Application.Run(new Form1());
Эта строка говорит приложению: создать Form1 и запустить оконный цикл. Пока окно открыто, программа продолжает работать и реагировать на события
Создать форму кодом
Для понимания полезно увидеть форму без дизайнера:
Form form = new Form();
form.Text = "Моя форма";
form.Width = 400;
form.Height = 300;
Button button = new Button();
button.Text = "Нажми";
button.Left = 20;
button.Top = 20;
form.Controls.Add(button);
Application.Run(form);
В реальном проекте дизайнер удобнее, но кодовый пример показывает принцип: форма — объект, кнопка — объект, элементы добавляются в Controls
Частые ошибки
Первая ошибка — создать Console App и ждать, что там появится дизайнер формы. Нужен Windows Forms App. Вторая — удалить InitializeComponent(). Третья — переименовать кнопку в дизайнере, но обращаться к старому имени в коде. Четвертая — писать логику прямо в дизайнерских файлах, которые Visual Studio генерирует автоматически
Если обработчик не срабатывает, проверьте событие Click в Properties. Иногда метод есть в коде, но не привязан к кнопке
Для первых форм держите логику простой: одна кнопка, одно поле ввода, один результат. Как только вы поймете связь «элемент на форме — событие — код в обработчике», добавлять новые элементы станет намного легче
Мини-задача
Создайте форму «Калькулятор скидки». На форме должны быть TextBox для суммы, Button для расчета и Label для результата. При клике прочитайте сумму, примените скидку 10% от 5000 рублей и выведите итог
Что почитать дальше по C#
- Как установить .NET SDK для C#
- Типы, переменные и строки в C#
- Ошибки C#: cannot convert, null reference и missing using
- Рубрика C#
Что почитать дальше по C#
Если нужен общий маршрут по теме, откройте рубрику C#. Для соседних задач пригодятся эти разборы:
- Как добавить форму в Visual Studio для C# Windows Forms
- Async await в C#: первый пример без магии
- Windows Forms App (.NET Framework): что это за шаблон в C#
- Как размножить PictureBox в C# Windows Forms