Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум_ИСРКЭС_Сусленкова.doc
Скачиваний:
273
Добавлен:
16.03.2015
Размер:
3.35 Mб
Скачать

Лабораторная работа № 3 - Разработка формы для работы с данными в средеVsualStudioбез кода

Цель работы: ознакомиться с возможностью мастеров среды MS Visual Studio для создания формы для работы с данными.

Задание: Необходимо создать простое (без написания кода) Windows-приложение, которое позволит взаимо­действовать с данными в БД – просмотр, удаление, добавление данных в таблицу «Модель». Пример формы изображен на рисунке 11.

Рисунок 11 – Форма для работы с данными из таблицы «Модель»

Ход работы:

  1. Добавим новую форму в проект

Откройте в Visual Studio проект, созданный в лабораторной работе № 2. Добавьте в проект новую форму. Добавьте обработчик для открытия только что добавленной формы при выборе в главном меню проекта пункта СправочникиКаталог моделей

  1. Добавьте в проект новый «источник данных» с помощью мастера, включающий в себя все столбцы таблицы «Модель», используя технологию 19.

  2. Рассмотрим, созданный мастером код. Для этого:

  • В окне Solution Explorer среды Microsoft Visual Studio найдите добавленный элемент – класс DataSet со строгим контролем типов, откройте (Дважды кликнув мышью) и рассмотрите его содержимое.

  • Выберите команду главного меню ViewServer Explorer - и на экране появится одноименное окно. В иерархической структуре элементов окна Server Explorer должен появиться элемент, соответствующий тому соединению, которое использовано в мастере Data Source Configuration.

  • В главном меню выберите команду DataShow Data Sources. Отобразится источник данных, который был создан с помощью мастера. Найдите узлы, соответствующие выбранной таблице «Модель», убедитесь что выделенные столбцы будут расположены в виде вложений под таблицами, в которые они входят.

Теперь рассмотрим, как же можно использовать новый источник данных.

  1. Добавление элементов в форму с помощью окна Data Source

Найдите в окне Data Source узел для таблицы «Модель» и разверните его (нажав на +). Выберите и перетащите его на форму все узлы-столбцы таблицы кроме столбца с Фото. Обратите внимание, что вместе с добавленными вами элементами на форме появился “Элемент управления навигацией”. Visual Studio добави­ла навигационный элемент управления и разместила его в верхней части формы.

  1. Запустите проект. С помощью элемента BindingNavigator переместитесь к последней модели, по­сле чего измените значение в одном из столбцов — ИмяМодели. Чтобы сохранить изменения, щелкните кнопку, на которой изображена дискета. После щелчка кнопки вы не сможете сразу увидеть на экране результаты заверше­ния процедуры сохранения изменений. Чтобы убедиться, что внесенные изменения успешно сохранены в БД, закройте форму и перезапустите ваш проект. Внесенные изменения должны быть отображены в форме.

  2. Изучение кода, сгенерированного в Visual Studio

Отобразите созданную в данной работе форму и откройте ее код события Load.

Из кода, сгенерированых в Visual Studio видно, что событие Load содержит код, который для таблицы моделей вызывает метод Fill в объектах TableAdapter. Метод Fill выполняет запрос, содержащийся в объекте TableAdapter, и сохраняет результаты в классе DataSet. При этом на класс DataSet ссылается таблица Моделей. Благодаря этому коду информация о моделях доступна в классе DataSet со строгим контролем типов в момент появления фор­мы — ее же можно отобразить в элементе управления TextBox.

Событие Click для Saveltem

Код события Click объекта Saveltem элемента управления BindingNavigator, относяще­гося к информации о модели, состоит из трех строк. В первой строке вызывается метод Validate для формы, чтобы элементы управления могли проверить достоверность данных, введенных пользователем. Во второй строке кода вызывается метод EndEdit объекта BindingSource, который относится к информации о моделях. Он передает привязанным и объекту BindingSource элементам управления команду записи ожи­дающих изменений а источник данных. Без ЭТОЙ строки изменения так и останутся в кэше элементов управления и не будут отправлены в БД посредством следующей строки. В заключительной строке кода вызывается метод Update объекта TableAdapter для получения информации о модели; он передает ожидающие изменения в класс DataSet со строгим контролем типов.