
- •Комп'ютерний практикум №1. Введение в Windows Forms
- •Ход работы (первой части лабораторного занятия).
- •Теоретические сведения:
- •Создание Windows-приложений
- •Окно кода программы
- •Роль класса Application
- •Свойства проекта
- •Запуск приложения
- •Что такое форма
- •Windows Forms в технологии .Net
- •Функциональные возможности класса Form
- •Цикл существования объекта Form
- •Резюме.
- •Диалог MessageBox
- •Закрытие формы (Выход из формы)
- •Создание mdi-приложений.
- •Стандартный делегат
- •Теоретические сведения: Иерархия классов. Понятие класса управляющих элементов.
- •Класс Control
- •Элемент управления TextBox
- •Класс Button
- •Элемент управления CheckBox
- •Переключатели и группирующие рамки
- •Элемент управления CheckedListBox
- •Комбинированные списки
- •Управляющий элемент ImageList
- •Элемент управления MonthCalendar
- •Элемент управления Panel
- •Порядок перехода по Tab
- •Форматирование элементов управления
- •Свойства Anchor и Dock
- •Всплывающие подсказки (ToolTips)
- •Создание меню
- •Главное меню.
- •Контекстное меню
- •Создание строки состояния
- •Создание пользовательского диалогового окна.
- •Стандартные диалоговые панели общего назначения.
- •II Задание Expression в таблице, используя визуальные средства разработки.
- •Теоретические сведения:
- •1 Класс DataSet.
- •1.1 Класс DataTable (таблицы)
- •1.1.1 Столбцы (объект Columns).
- •1.1.2 Строки (объект Row)
- •Добавление данных.
- •Заполнение полей.
- •Изменение данных.
- •Состояния строки.
- •Обработка событий
- •Привязка DataTable к некоторым элементам управления.
- •1.1.3 Ограничения (объект Constraints)
- •1.1.4 Представление (объект DataView).
- •1.2 Класс DataRelation (связи между таблицами)
- •2 Просмотр данных. Класс DataGridView.
- •Источники данных (DataSource).
- •2.1.1 Отображение данных из массива
- •2.1.2 Отображение данных из DataTable
- •2.1.3 Отображение данных из DataView
- •Фильтрация на основе состояния строк
- •Сортировка строк
- •2.1.4 Отображение данных из класса DataSet
- •2.1.5 Отображение данных из массива
- •2.2 Привязка данных (DataBinding).
- •Простая привязка.
- •Объекты привязывающие данные (BindingContext)
- •3 Схемы xml.
- •3.1 Пример использования xml-формата для взаимодействия с xml Web-службами:
- •3.2 Ado.Net 2.0 тесно интегрировано с xml.
- •4 Xsd (xml Structure Defenitions) схема.
- •4.1 Описание.
- •4.2 Основные элементы
- •4.3 Использование Visual Studio 2005 .Net
- •4.3.1. Загрузка схем и данных в DataSet
- •4.3.2 Запись схемы и данных из DataSet
- •Основна термінологія, яка використовується при проектуванні форм, панелей екранів. Основні види форм.
- •Основні поняття, що використовуються при проектуванні діалогу.
- •Основна термінологія, що використовується при проектуванні вікон. Визначення вікон, типи вікон.
- •Спосіб проектування інтерфейсу користувача з орієнтацією на дані.
- •Спосіб проектування інтерфейсу користувача з орієнтацією на документи.
- •Вибір моделі інтерфейсу.
- •Розробка вікна.
- •Теоретичні відомості. Проектування полів вибору і вводу інформації: курсор, режим “вкажи і вибери”.
- •Поле вибору: визначення, стан, типи.
- •Поле вибору: представлення об’єктів, ідентифікація поля.
- •Поле вибору: курсор вибору, виділення обраного об’єкту, недоступність об’єкту вибору, черговість розташування, елементи настроювання.
- •Взаємодія користувача з полями вибору, первісні представлення, вхідний стан.
- •Поле введення: визначення, ідентифікація, роздільники, шрифт, правила читабельності.
- •Варіанти вибору повідомлень.
- •Правила складання повідомлень.
- •Теоретичні відомості. Меню дій, спадаюче меню: призначення, розташування, обов’язкові опції, число опцій.
- •Послідовність опцій курсору.
- •Елементи настроювання і виклик опцій.
- •Особливості режимів роботи для одного користувача і багатьох користувачів.
- •Спливаюче меню.
- •Область функціональних клавіш.
- •Теоретичні відомості. Принципи проектування екранів.
- •Вимоги, що пред’являє фірма Microsoft до розробки інтерфейсів.
- •Область команд: розміщення, зміст, використання, правила запиту дії “Команда”.
- •Правила для дій “Витяг команди”, правила для дії “Підказка”.
- •Співвідношення між областю команд і меню дій.
Управляющий элемент ImageList
Управляющий элемент ImageList предоставляет семейство, которое может быть использовано для хранения рисунков, используемых другими управляющими элементами данной формы. В этом списке рисунков могут храниться изображения произвольных размеров, однако в рамках каждого конкретного управляющего элемента все рисунки должны иметь одинаковые размеры.
Многие элементы управления включают в себя свойство ImageList (принимает значение имени соответствующего элемента на форме), ImageIndex (индекс в ImageList, представляющий изображение, которое подлежит отображению в элементе управления).
Изображения добавляются в компонент ImageList с помощью метода Add свойства ImageList.Images.
Элемент управления MonthCalendar
В пространстве имен System.Windows.Forms предусмотрен элемент управления, при помощи которого пользователь может выбрать дату или диапазон дат, используя дружественный и удобный интерфейс. Это элемент управления MonthCalendar.
Наиболее важные свойства MonthCalendar представлены в таблице 16.
Таблица 16. Свойства MonthCalendar
Свойство |
Назначение |
BoldedDates |
Массив объектов DateTime, выделенных подсветкой |
CalendarDimensions |
Определяет количество выводимых строк и столбцов |
FirstDayOfWeek |
Определяет, с какого дня будет начинаться неделя в MonthCalendar |
MaxDate |
Самая поздняя дата, которую разрешается выбрать пользователю (по умолчанию ограничений нет) |
MaxSelectionCount |
Максимальное количество дат, которое одновременно может выбрать пользователь |
MinDate |
Самая ранняя дата, которую разрешается выбрать пользователю (по умолчанию ограничений нет) |
MonthlyBoldedDates |
Массив выделенных подсветкой объектов DateTime для месяца |
SelectionRange |
Диапазон выделенных объектов |
SelectionEnd |
Самая поздняя дата в диапазоне выделенных объектов |
SelectionStart |
Самая ранняя дата в диапазоне выделенных объектов |
ShowToday |
Определяет, будет ли MonthCalendar выводить информацию о текущей дате |
ShowTodayCircle |
Определяет, будет ли MonthCalendar выводить информацию о текущей дате в нижней части и выделять ее в календаре обводкой |
ShowWeekNumbers |
Определяет, будет ли MonthCalendar отображать номера недель справа от каждой строки |
TodayDate |
Дата, которая будет считаться MonthCalendar сегодняшней. По умолчанию TodayDate - это системная дата на момент создания объекта MonthCalendar |
TodayDateSet |
Определяет, можно ли пользователю по своему усмотрению выбирать сегодняшнюю дату. Если для этого свойства установлено значение true, пользователь может выбрать в качестве сегодняшней (TodayDate) любое число |
По умолчанию всегда выделяется (и подсветкой, и обводкой) текущая дата. Пользователь может выбрать другую дату - в этом и есть смысл графического интерфейса MonthCalendar.
Можно получить дату, выбранную пользователем в MonthCalendar, при помощи свойства SelectionStart. Это свойство возвращает ссылку на объект DateTime, которая хранится в специальной переменной (d) При помощи набора свойств типа DateTime можно извлечь всю необходимую информацию в нужном нам формате.
При помощи свойств Month, Day и Year можно извлечь из объектов DateTime нужную информацию и сформировали текстовые строки. Это вполне допустимый подход. Дело в том, что дату в необходимом текстовом формате проще получить из DateTime при помощи специальных "форматирующих" свойств самих объектов DateTime. Набор таких свойств (и некоторые методы) представлен в таблице 17.
Таблица 17. Члены класса DateTime
Член |
Назначение |
Date |
Позволяет получить информацию о дате (дата всегда отсчитывается от полуночи) |
Day, Month, Year |
Позволяют получить соответственно день, месяц и число из текущего объекта DateTime |
DayOfWeek |
Возвращает день недели для объекта DateTime |
DayOfYear |
Возвращает номер дня в году для объекта DateTime |
Hour, Minute, Second, Millisecond |
Возвращают информацию о часе, минутах, секундах и миллисекундах для объекта DateTime |
MaxValue, MinValue |
Возвращают минимальное и максимальное значения для DateTime |
Now, Today |
Эти два статических свойства типа DateTime позволяют получить информацию о текущей дате и времени (Now) или только о текущей дате (Today) |
Ticks |
Позволяет получить счетчик "тиков" (с интервалом в 100 наносекунд) для объекта DateTime |
ToLongDateString( ), ToLongTimeString( ), ToShortDateString( ), ToShortTimeString( ) |
Преобразуют текущее значение объекта DateTime в разные виды текстового представления |
При помощи вышеперечисленных членов можно значительно упростить вывод текстовой информации о дате.