Практическая работа №1 Базовые компоненты Visual C#
Цель работы: изучение основ работы в среде Visual C#.
Задачи: 1. Изучить теоретический материал
2. Выполнить практическое задание.
3. Ответить на контрольные вопросы.
4. Оформить отчет.
Теоретический материал Интегрированная среда разработки Visual C# представляет собой набор средств разработки, предоставляемых через единый пользовательский интерфейс. Некоторые средства используются совместно с другими языками Visual Studio, в то время как другие, например, компилятор C#, свойственны только Visual C#.
Создание проекта Перед началом программирования необходимо задать проект. Проект содержит все исходные материалы для приложения, такие как файлы исходного кода, файлы ресурсов, такие как значки, ссылки на внешние файлы, на которые опирается программа, и данные конфигурации, такие как параметры компилятора. При построении проекта Visual C# вызывает компилятор C# и другие внутренние средства для создания исполняемой сборки из файлов проекта.
Для создания нового проекта в меню Файл следует указать Создать и щелкнуть Проект.
Для создания приложения для Windows необходимо в появившемся диалоговом окне выбрать значок Windows Application. В поле ввода Имя (Name) необходимо задать имя проекта.
Среда Visual C#
Далее перечислены наиболее важные средства и окна в Visual C#. Окна большинства из этих средств можно открыть через меню Вид.
Отладчик Visual Studio для тестирования программы.
Панель элементов и Конструктор для быстрой разработки пользовательских интерфейсов при помощи мыши.
Обозреватель решений для просмотра и управления файлами и параметрами проекта.
Конструктор проектов для настройки параметров компилятора, путей развертывания, ресурсов и много другого.
Окно классов для перехода по исходному коду по типам, а не файлам.
Окно Свойства для настройки свойств и событий элементов управления в пользовательском интерфейсе.
Обозреватель объектов для просмотра методов и классов, доступных в библиотеках динамической компоновки, включая сборки .NET Framework и COM-объекты.
Обозреватель документов для просмотра и поиска документации по продуктам на локальном компьютере или в Интернете.
Взаимодействие со средствами осуществляется через окна, меню, страницы свойств и мастеров в интегрированной среде разработки. Основа интегрированной среды разработки показана на рис. 1.
Конструктор
формы
отладчик
Обозреватель решений
панель
инструментов
Рисунок 1 – Окно интегрированной среды Visual C#
Показать или скрыть панели инструментов можно посредством меню Вид (View) (рис. 2). По умолчанию в среде C# отображаются панели, представленные на рис. 1. Однако при написании кода потребуется панель свойств объектов. Ее можно вывести на экран посредством меню View – Properties Window.
Рисунок 2 – Меню «Вид»
Создание интерфейса пользователя Быстрота и удобство создания пользовательских интерфейсов в Visual C# обеспечивается благодаря Windows Form Designer или Windows Presentation Foundation (WPF) Designer.. Создание пользовательских интерфейсов происходит в три основных этапа.
Добавление элементов управления на поверхность разработки.
Установка начальных свойств для элементов управления.
Написание обработчиков для заданных событий.
Хотя пользовательский интерфейс можно создать вручную, написав собственный код, с помощью конструкторов это можно сделать намного быстрее.
Элементы управления, являющиеся компонентами с визуальным представлением (например, кнопки и текстовые поля) можно перетащить мышью в поверхность разработки одного из конструкторов. На рисунке ниже показано поле со списком, которое при помощи перетаскивания из Панели элементов было добавлено в форму в Конструкторе Windows Forms.
При работе в визуальном режиме конструктор Windows Forms переводит выполняемые действия в исходный код C# и записывает их в файл проекта с именем имя.designer.cs, где имя – имя, назначенное форме. Подобным образом, конструктор WPF переводит действия на поверхности разработки в код языка XAML и записывает его в файл проекта с именем Window.xaml. Когда приложение будет выполнено, исходный код (Windows Form) или XAML (WPF) разместит элементы пользовательского интерфейса и скорректирует их размер таким образом, как они отображаются на поверхности построения.
Окно панели инструментов представлено на рисунке 3. Компоненты панели объединены по группам в зависимости от выполняемых функций. При наведении курсора на компонент появляется всплывающая подсказка с описанием функций компонента.
Рисунок 3 – Панель инструментов
В таблице 1 приведено описание основных компонентов и их главных свойств.
Таблица 1.
Основные свойства компонентов
№
Наименование компонента
Назначение
Основные свойства
1
Form
Окно программы
Name
Имя формы
Text
Заголовок формы
Size
Размер формы
Location
Положение формы на экране
FormBorderStyle
Тип границы
ControlBox
Управляет отображением системного меню и кнопок управления окном
Icon
Значок в заголовке окна
ForeColor
Цвет, наследуемый компонентами формы
Font
Шрифт для компонентов формы
BackColor
Цвет формы
Opacity
Прозрачность формы. 100% - непрозрачная. Если значение меньше 100% - сквозь форму видна поверхность, на которой она отображается
2
Button
Кнопка, которая вызывает событие после щелчка по ней
Name
Имя компонента. Используется для доступа к компоненты и его свойствам
Text
Текст на кнопке
TextAlign
Выравнивание текста на кнопке
FlatStyle
Стиль кнопки
Location
Положение кнопки
Size
Размер
Font
Шрифт
ForeColor
Цвет текста на кнопке
Enabled
Доступность кнопки
Visible
Видимость кнопки
Cursor
Вид курсора при наведении на кнопку
Image
Картинка на поверхности кнопки
Продолжение таблицы 1
3
CheckBox
Переключатель, который может находиться в одном из двух состояний (выбранном или нет)
Text
Текст, отображаемый справа от кнопки
Checked
Состояние переключателя
Visible
Видимость
FlatStyle
Стиль переключателя
4
CheckedListBox
Список элементов CheckBox
Items
Элементы списка
Items.Count
Количество элементов списка
Sorted
Признак автоматической сортировки
CheckedItems
Выбранные элемента списка
CheckedItems.Count
Количество выбранных элементов
CheckedIndices
Коллекция, элементы которой содержат номера выбранных элементов списка
MultiColumn
Признак необходимости отображать список в несколько колонок
Признак необходимости отображения комбинации клавиш
11
NotifyIcon
Значок, который отображается в системной области панели задач. Обычно используется для программ, работающих в фоновом режиме.
Icon
Значок, который отображается на панели задач
Text
Подсказка (обычно название программы)
ContextMenuStrip
Обеспечивает отображение контекстного меню
Visible
Признак видимости компонента
Продолжение таблицы 1
12
NumericUpDown
Предназначен для ввода числовых данных
Value
Значение, соответствующее содержимому поля редактирования
Maximum
Максимально возможное значение
Minimum
Минимально возможное значение
Increment
Величина, на которую увеличивается или уменьшается значение компонента при щелчке мышью
TextAlign
Выравнивание текста
13
OpenFileDialog
Диалог открытия файла
Title
Текст в заголовке окна
Filter
Описание и фильтр (маска) имени файла
FilterIndex
Задает фильтр, который используется в момент появления диалога на экране, если задано несколько фильров
FileName
Имя файла, введенное пользователем или выбранное в списке файлов
InitialDirectory
Каталог, содержимое которого отображается при появлении диалога на экране
RestoreDitectory
Отображает последний открытый каталог при предыдущем вызове диалога
Продолжение таблицы 1
14
PictureBox
Вывод картинок
Image
Картинка, которая отображается в поле компонента
Size
Размер рисунка
SizeMode
Метод отображения (масштабирования компонента)
Image.PhysicalDimension
Информация об истинном размере картинки
Location
Положение компонента
Visible
Признак видимости
BorderStyle
Стиль границы
15
Radiobutton
Кнопка, состояние которой зависит от состояния других таких же кнопок. Обычно кнопки RadioButton объединяют в группы и лишь одна кнопка из группы может быть выбрана
Text
Текст, который отображается рядом с кнопкой
Checked
Состояние кнопки (выбрана или нет)
TextAlign
Положение текста
CheckAlign
Положение кнопки
Enabled
Доступность кнопки
Visible
Видимость кнопки
AutoCheck
Определяет, должно ли автоматически изменяться состояние при щелчке по нему
FlatStyle
Стиль кнопки
Appearance
Вид переключателя
Image
Картинка рядом с кнопкой
ImageAlign
Положение картинки
ImageList
Набор картинок, используемых для обозначения различных состояний кнопки
Продолжение таблицы 1
16
SaveFileDialog
Title
Заголовок окна
FileName
Имя файла, заданное пользователем
DefaultExt
Расширение файла по умолчанию
InitialDirectory
Каталог, содержимое которого отображается при появлении диалога на экране
RestoreDirectory
Последний каталог, который был отображен при предыдущем вызове диалога
CheckPathExists
Признак необходимости существования каталога для сохранения файла
CheckFileExists
Признак необходимости проверки существования файла с заданным имененм
Filter
Описание и фильтр (маска) имени файла
FilterIndex
Задает фильтр, которые используется в момент появления диалога на экране, в случае, когда используется несколько фильтров
17
ProgressBar
Индикатор для наглядного представления протекаемого процесса
Разрешает или запрещает ввод текста в несколько строк
Readonly
Разрешает или запрещает редактирование текста
Lines
Массив строк, элементы которого содержит текст, если включен ввод в несколько строк
ScrollBars
Задает полосы прокрутки
20
Timer
Таймер. Позволяет организовать повторение действий.
Interval
Период генерации события Tick
Enabled
Разрешение работы. Включение или выключение таймера
После добавления элемента управления на поверхность разработки в окне Свойства можно задать его свойства, такие как цвет фона и текст по умолчанию.
В конструкторе Windows Form значения, задаваемые в окне Свойства, являются начальными значениями, которые будут назначены соответствующему свойству при создании элемента управления во время выполнения. В конструкторе WPF значения, задаваемые в окне Свойства, хранятся как атрибуты в файле XAML окна.
Во многих случаях доступ к значениям и их изменение возможно программными средствами во время выполнения путем получения и установки свойств в экземпляре класса элемента управления в приложении. Окно Свойство может оказаться полезным во время выполнения, так как с его помощью можно просматривать все свойства, события и методы, поддерживаемые элементом управления.
Программы с графическим интерфейсом пользователя главным образом основаны на событиях. Такие программы ожидают действий пользователя, например ввода текста в текстовое поле, нажатия кнопки или изменения выбора в поле со списком. При выполнении действия элемент управления, который всего лишь представляет собой экземпляр класса .NET Framework, отправляет событие в приложение. Для обработки события можно написать специальный метод в приложении, который будет вызван при получении события.
В окне Свойства можно указать события, которые должны обрабатываться в коде. Для просмотра событий элемента управления следует выбрать его в конструкторе и нажать кнопку События с изображением молнии в панели инструментов окна Свойства. Следующий значок изображен на кнопке событий.
При добавлении обработчика событий через окно Свойства конструктор автоматически заполняет пустое тело метода. Чтобы метод выполнил некоторое действие, необходимо написать код. Большинство элементов управления создают много событий, но часто приложению придется обрабатывать лишь часть из них или даже только одно. Например, возможно потребуется обработать событие Click для кнопки, но не ее событие SizeChanged, если только нет необходимости в каких-либо действиях при изменении размера кнопки.