Практическое руководство. Отображение связанных данных в приложениях WPF
В некоторых приложениях может потребоваться работать с данными из нескольких таблиц или сущностей, между которыми существуют родительско-дочерние отношения. Например, может потребоваться вывести на экран сетку, в которой отображались бы клиенты из таблицы Customers. Когда пользователь выбирает того или иного клиента, выводится другая сетка, в которой отображаются заказы этого клиента из связанной таблицы Orders.
Связанные с данными элементы управления, которые отображают связанные данные, можно создавать путем перетаскивания элементов из окна Источники данных в конструктор WPF.
Чтобы создать элементы управления, отображающие связанные записи, выполните следующие действия
Чтобы открыть окно Источники данных, щелкните пункт Показать источники данных в меню Данные.
Щелкните Добавить новый источник данных и выполните все необходимые действия в Мастере настройки источника данных.
Откройте конструктор WPF и удостоверьтесь, что он содержит контейнер, который является допустимым целевым объектом перетаскивания элементов в окне Источники данных.
Дополнительные сведения о допустимых целевых объектах перетаскивания см. в разделе Привязка элементов управления WPF к данным в Visual Studio.
В окне Источники данных разверните узел, представляющий родительскую таблицу или родительский объект в существующем отношении. Родительская таблица или родительский объект находится на стороне "один" в отношении "один ко многим".
Перетащите родительский узел (или некие отдельные элементы в родительском узле) из окна Источники данных на допустимый целевой объект перетаскивания в конструкторе.
Visual Studio генерирует язык XAML, который создает новые связанные с данными элементы управления для всех перетаскиваемых элементов. Язык XAML также добавляет к ресурсам целевого объекта перетаскивания новый CollectionViewSource для родительской таблицы или родительского объекта. Для некоторых источников данных Visual Studio также генерирует код для загрузки данных в родительскую таблицу или родительский объект. Дополнительные сведения см. в разделе Привязка элементов управления WPF к данным в Visual Studio.
В окне Источники данных найдите связанную дочернюю таблицу или связанный дочерний объект. Связанные дочерние таблицы и объекты отображаются в виде разворачиваемых узлов в нижней части списка данных родительского узла.
Перетащите дочерний узел (или некие отдельные элементы в дочернем узле) из окна Источники данных на допустимый целевой объект перетаскивания в конструкторе.
Visual Studio генерирует язык XAML, который создает новые связанные с данными элементы управления для всех перетаскиваемых элементов. Язык XAML также добавляет к ресурсам целевого объекта перетаскивания новый CollectionViewSource для дочерней таблицы или дочернего объекта. Этот новый CollectionViewSource связан со свойством родительской таблицы или родительского объекта, только что помещенных в конструктор. Для некоторых источников данных Visual Studio также генерирует код для загрузки данных в дочернюю таблицу или дочерний объект.
На следующем рисунке показана связанная таблица Заказы таблицы Клиенты в наборе данных в окне Источники данных.
См. также
Задачи
Практическое руководство. Привязка элементов управления WPF к данным в Visual Studio
Практическое руководство. Создание таблиц подстановки в приложениях WPF
Пошаговое руководство. Отображение связанных данных в приложении WPF