
- •Лабораторная работа №1. Введение в Windows Forms
- •Ход работы (первой части лабораторного занятия).
- •Теоретические сведения:
- •Создание Windows-приложений
- •Окно кода программы
- •Роль класса Application
- •Свойства проекта
- •Запуск приложения
- •Что такое форма
- •Windows Forms в технологии .Net
- •Функциональные возможности класса Form
- •Цикл существования объекта Form
- •Резюме.
- •Диалог MessageBox
- •Закрытие формы (Выход из формы)
- •Создание mdi-приложений.
- •Стандартный делегат
Разработка
Windows
приложений с использованием среды
Microsoft
Visual
C#
2005 Express
Edition.
Лабораторная работа №1. Введение в Windows Forms
Цель: овладеть возможностями использования инструментальных средств программной среды Microsoft Visual C# 2005 Express Edition для проектирования Windows приложений. Научиться создавать и работать с делегатами.
Ход работы (первой части лабораторного занятия).
Обзор инструментальных средств программной среды Microsoft Visual C# 2005 Express Edition для проектирования Windows приложений.
Создать Windows Application с именем Programm1
В окне Properties для Form1 свойству File Name назначить TestForm.cs
На форме разместить Label, TextBox с панели инструментов ToolBox; Button создать в конструкторе формы программно, для этого:
4.1. ПКМ на форме → View Code → скопировать в конструктор формы код:
Button myBtn = new Button();
myBtn.Text = "Вызов второй формы";
myBtn.Size = new Size(135, 23);
myBtn.Location = new Point(12, 238);
this.Controls.Add(myBtn);
4.2. сгенерировать событие onClick() этой кнопки:
написать myBtn.Click += → нажать два раза Tab →
появится код myBtn.Click += new EventHandler(myBtn_Click);
и шаблон события:
void myBtn_Click(object sender, EventArgs e)
{
throw new Exception("The method or operation is not implemented.");
}
5. Создать вторую форму с именем Form2 и реализовать ее вызов нажатием на кнопку myBtn, для этого:
5.1. ПКМ по проекту в Solution Explorer → ADD → Windows Forms;
5.2. в метод myBtn_Click скопировать следующий код, что реализует пример SDI:
Form2 f = new Form2();
f.StartPosition = FormStartPosition.CenterScreen;
f.ShowDialog();
Сменить последовательность загрузки форм, протестировать и вернуть последовательность на первоначальную.
Исследование жизненного цикла формы. Для этого:
создать переменную int x = 0;
последовательно реализовать методы, в которых переопределить значение этой переменной и вывести в TextBox на форме:
Form_Load ()
button1_Click
Form_Deactivate
Form_Аctivate
Работа с делегатами самостоятельно.
8.1. рассмотреть
8.2. В обработчиках событий Load, Closed, Activated и Deactivate в строковую переменную string (с именем lifeTimeInfo) добавляется имя перехваченного события. Обработчик события Closed отображает значение этой строки в окне сообщения:
8.3. В обработчике события Closing задается вопрос о том, действительно ли пользователь желает завершить работу приложения. При этом используется поступающий на вход объект CanselEventArgs.
Создание MDI приложения (MDIapp):
9.1. создать приложение и две формы Form1 и Form2.
9.2. Form1 представляет собой родительскую форму MDI, для этого в конструкторе допишем:
//сделаем текущую форму родительской
this.IsMdiContainer = true;
//создаем экземпляр дочерней формы
Form2 f = new Form2();
//передаем ссылку на дочернюю форму, которую показываем
this.ShowMdiChild(f);
9.3. Сгенерируем метод создания дочерней формы, т.е ПКМ на ShowMdiChild → Generate Method Stub, который примет вид:
private void ShowMdiChild(Form childForm)
{
childForm.MdiParent = this;
childForm.Show();
}