Пошаговое руководство. Отображение связанных данных на форме в приложении Windows

Во многих сценариях приложений возникает необходимость в использовании данных, поступающих сразу из нескольких таблиц, причем довольно часто – из таблиц, связанных между собой.То есть требуется работать со связью родитель–потомок.Например, может потребоваться создать форму, где при выборе записи клиента отображаются заказы этого клиента.Отображение связанных записей на форме достигается путем установки свойства DataSource дочерних элементов BindingSource на значение родительского элемента BindingSource (а не на дочернюю таблицу!), и свойства DataMember дочернего BindingSource на значение отношения данных, связывающего родительские и дочерние таблицы.

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

  • Создание проекта Приложения Windows.

  • Создание и настройка набора данных в приложении, основанного на таблицах Customers и Orders в базе данных Northwind, с помощью мастер настройки источника данных.

  • Добавление элементов управления для отображения данных из таблицы Customers.

  • Добавление элементов управления для отображения таблицы Orders на основе выбранной таблицы Customer.

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

Обязательные компоненты

Для выполнения этого пошагового руководства потребуется следующее.

Создание проекта

Первым шагом является создание Приложения Windows.

Чтобы создать проект Приложения Windows:

  1. В меню Файл создайте новый проект.

  2. Назовите проект RelatedDataWalkthrough.

  3. Выберите Приложение Windows и нажмите кнопку OK.Дополнительные сведения см. в разделе Разработка клиентских приложений.

    Проект RelatedDataWalkthrough будет создан и добавлен в Обозреватель решений.

Создание источника данных

На этом шаге создается набор данных на основе таблиц Customers и Orders учебной базы данных Northwind.

Создание источника данных

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

  2. Чтобы запустить Мастер настройки источника данных, выберите элемент Добавить новый источник данных в окне Источники данных.

  3. На странице Выбор типа источника данных выберите элемент База данных и нажмите Далее.

  4. На странице Выбор подключения базы данных выполните одно из следующих действий:

  5. Если базе данных требуется пароль, выберите параметр для включения конфиденциальных данных и щелкните Далее.

  6. Щелкните Далее на странице Сохранение подключения в файле конфигурации приложения.

  7. Разверните узел Таблицы на странице Выбор объектов базы данных.

  8. Выберите таблицы Customers и Orders и нажмите Готово.

    Набор данных NorthwindDataSet будет добавлен к проекту, и таблица Customers появится в окне Источники данных.

Создание элементов управления для отображения данных из таблицы Customers

Чтобы создать элементы управления для отображения данных клиентов (родительские записи):

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

  2. Выберите Сведения в меню.

  3. Перетащите главный узел Customers из окна Источники данных на Form1.

    Элементы управления с привязкой к данным с подписями описания появятся на форме вместе с панелью инструментов (BindingNavigator) для управления записями.NorthwindDataSet, CustomersTableAdapter, BindingSource и BindingNavigator появляются в области компонента.

Создание элементов управления для отображения данных из таблицы Orders

Окно “Источники данных”, демонстрирующее отношение

Чтобы создать элементы управления для отображения заказов для каждого клиента (дочерних записей):

  • В окне Источники данных разверните узел Customers, выберите последний столбец в таблице Customers (это разворачиваемый узел Orders) и перетащите его на нижнюю часть Form1.

    DataGridView добавляется на форму, и новые BindingSource (OrdersBindingSource) и адаптер таблицы (OrdersTableAdapter) добавляются в область компонентов.

    ПримечаниеПримечание

    Откройте окно свойств и выберите OrdersBindingSource.Изучите свойства DataSource и DataMember, чтобы увидеть настройку привязки для отображения связанных записей.Свойство DataSource устанавливается в значение CustomersBindingSource (BindingSource родительской таблицы), а не на таблицу Orders.Свойство DataMember устанавливается в значение FK_Orders_Customers – имя объекта DataRelation , связывающего таблицы.

Тестирование приложения

Тестирование приложения

  1. Нажмите клавишу F5 для запуска приложения.

  2. Выбирайте различных клиентов с помощью CustomersBindingNavigator для проверки корректности отображения заказов на DataGridView.

Следующие действия

В зависимости от требований приложения существуют несколько шагов, которые, возможно, потребуется выполнить после создания формы с отображением вида "главный-подчиненный".Одно возможное улучшение, которое можно реализовать в данном пошаговом руководстве:

См. также

Задачи

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

Ссылки

Окно "Источники данных"

Общие сведения о компоненте BindingSource

Общие сведения об элементе управления BindingNavigator (Windows Forms)

Основные понятия

Новые возможности разработки приложений для работы с данными в Visual Studio 2012

Привязка элементов управления Windows Forms к данным в Visual Studio

Общие сведения об источниках данных

Общие сведения об адаптере таблиц

Другие ресурсы

Пошаговые руководства работы с данными