Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по C#_Часть1.doc
Скачиваний:
92
Добавлен:
19.08.2019
Размер:
2.54 Mб
Скачать
    1. Отображение данных в элементе управления DataGridView в Windows Forms

      1. Отображение данных одной таблицы

Данные из таблицы можно отобразить на форме разными способами: с помощью списков, текстовых полей, таблиц и др. Наиболее наглядным способом прдставления данных является табличный с помощью элемента управления DataGridView.

Для отображения данных в элементе управления DataGridView Windows Forms:

  1. Откройте окно Источники данных.

  2. Откройте форму в конструкторе Windows Forms.

  3. Выберите таблицу в окне Источники данных, щелкните по стрелке раскрывающегося списка и выберите DataGridView.

  4. Перетащите таблицу из окна Источники данных на форму.

Результат. На форме появится элемент управления DataGridView и панель инструментов BindingNavigator для перемещения по записям. Компоненты Имя_БД_DataSet, Имя_таблицы_TableAdapter и Имя_таблицы_BindingSource появятся в области компонентов.

Пример. Перетащите главный узел таблицы (например, Person) из окна Источники данных на форму.

В результате в области компонентов появятся компоненты: personBindingSource, personTableAdapter, personBindingNavigator.

Внимание. При перетаскивании элементов на существующую таблицу все ранее созданные привязки данных заменяются новыми.

Изменение заголовка столбца данных DataColumn

Столбцы данных часто имеют имена, не подходящие для отображения в пользовательском интерфейсе. Можно изменить заголовок на более подходящее имя, установив свойство Caption в окне Свойства.

Примечание При перетаскивании элементов из окна Источники данных на форму в приложении Windows необходимо учесть следующую особенность: если два или более слов оказываются объединенными последовательно, имена столбцов в названиях переформатируются в строку, более удобную для чтения.

      1. Отображение данных из нескольких связанных таблиц

Связь создается между общими столбцами из каждой таблицы — в данном случае используется столбец Pasport.

Чтобы создать и настроить связь между таблицами (например "Person" и "Worker"):

    1. В окне Источники данных в контекстном меню к источнику базы данных выберите команду Изменить набор данных в конструкторе, например:

Результат. В рабочей области среды разработки приложений откроется новая вкладка Имя_источника данных.xsd, содержащий таблицы базы данных, например:

    1. В контекстном меню к заголовку подчиненной таблицы выберите команды Добавить, Отношение, например:

    1. В появившемся окне Отношение заполните поля:

  • Имя – имя связи;

  • Имена главной (родительской) и подчиненной (дочерней) таблиц;

  • Имена столбца(ов) - первичного ключа в главной таблице и столбца(ов) - внешнего ключа в подчиненной таблице;

  • Тип ограничения или его отсутствие (переключатель Только отношение).

    1. Нажмите кнопку ОК.

Например:

Результаты:

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

      1. В окне Источники данных у узла главной таблицы появится подузел подчиненной таблицы. С помощью данной конструкции можно отобразить данные на форме в виде Связанных курсоров.

Пример:

Узел дочерней таблицы — это узел, отображающийся как расширяемый дочерний узел в родительской таблице.

Внимание. Перетаскивание элементов из окна Источники данных в форму автоматически добавляет нужный код для заполнения набора данных в обработчик событий Load для формы, на которой размещены данные.

Метод Fill() объекта TableAdapter заполняет набор данных данными, пример:

private void Form1_Load(object sender, EventArgs e)

{

this.personTableAdapter1.Fill(this.SotrudnicDataSet11.person);

}

При необходимости можно скопировать этот код в другие части приложения, где необходимо заполнить набор данных.

Отображение связанных данных в приложении Windows Forms

Можно отобразить связанные данные путем перетаскивания элементов, которые совместно используют один и тот же узел главной таблицы, из окна Источники данных на форму. Например, если имеется источник данных, который имеет таблицу Person и связанную с ней таблицу Worker, обе таблицы будут отображаться как узлы верхнего уровня (в иерархическом представлении) в окне Источники данных. Разверните узел Person, чтобы просмотреть столбцы, после чего можно заметить, что последний столбец в списке является расширяемым узлом, представляющим таблицу Worker. Этот узел представляет данные о работе сотрудников, личные данных которых хранятся в таблице Person. Это означает, что если нужно создать форму, позволяющую выбрать сотрудника и затем вывести список совмещаемых им должностей, то следует перетащить элементы, которые требуется отобразить, из этой одиночной иерархии.

Чтобы создать элементы управления, отображающие связанные записи, выполните следующие действия:

  1. Откройте форму в конструкторе Windows Forms.

  2. Откройте окно Источники данных.

  3. Разверните узел, представляющий родительскую таблицу в отношении.

  4. Перетащите все подлежащие отображению элементы из родительской таблицы связи, отображаемой в окне Источники данных, на форму.

  5. Связанные дочерние таблицы отображаются в виде расширяемых узлов в нижней части списка столбцов родительской таблицы. Перетащите элементы, которые требуется отобразить, из таких связанных узлов на форму.

Пример: