Создание таблиц подстановки в приложениях WPF платформа .NET Framework

Примечание.

Наборы данных и связанные классы являются устаревшими технологиями платформа .NET Framework с начала 2000-х годов, которые позволяют приложениям работать с данными в памяти во время отключения приложений от базы данных. Они особенно полезны для приложений, которые позволяют пользователям изменять данные и сохранять изменения обратно в базу данных. Хотя наборы данных оказались очень успешными, мы рекомендуем новым приложениям .NET использовать Entity Framework Core. Entity Framework предоставляет более естественный способ работы с табличными данными в виде объектных моделей, и он имеет более простой интерфейс программирования.

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

Например, рассмотрим таблицу Orders в базе данных продаж. Каждая запись в Orders таблице включает в себя, CustomerID указывающую, какой клиент разместил заказ. Это CustomerID внешний ключ, указывающий на запись клиента в Customers таблице. При отображении списка заказов из Orders таблицы может потребоваться отобразить фактическое имя клиента вместо имени CustomerIDпользователя. Так как имя клиента находится в Customers таблице, необходимо создать таблицу подстановки для отображения имени клиента. В таблице подстановки используется CustomerID значение в Orders записи для перехода к связи и возврата имени клиента.

Создание таблицы подстановок

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

    Примечание.

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

  2. Откройте конструктор WPF и убедитесь, что конструктор содержит контейнер, который является допустимым целевым объектом удаления для элементов в окне источников данных.

    Дополнительные сведения о допустимых целевых объектах удаления см. в разделе Привязка элементов управления WPF к данным в Visual Studio.

  3. Чтобы открыть окно Источники данных, щелкните пункт Показать источники данных в меню Данные.

  4. Разверните узлы в окне источников данных, пока не увидите родительскую таблицу или объект, а также связанную дочернюю таблицу или объект.

    Примечание.

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

  5. Щелкните раскрывающееся меню дочернего узла и выберите "Сведения".

  6. Разверните дочерний узел.

  7. В дочернем узле щелкните раскрывающееся меню для элемента, связанного с дочерними и родительскими данными. (В предыдущем примере это Узел CustomerID .) Выберите один из следующих типов элементов управления, поддерживающих привязку подстановки:

  8. Перетащите дочерний узел из окна источников данных в контейнер в конструкторе WPF. (В предыдущем примере дочерний узел — это дочерний узел. Узел orders .)

    Visual Studio создает XAML, который создает новые элементы управления, привязанные к данным, для каждого из перетаскиваемых элементов. XAML также добавляет новый CollectionViewSource объект для дочерней таблицы или объекта в ресурсы целевого объекта удаления. Для некоторых источников данных Visual Studio также создает код для загрузки данных в таблицу или объект. Дополнительные сведения см. в разделе "Привязка элементов управления WPF к данным в Visual Studio".

  9. Перетащите родительский узел из окна источников данных в элемент управления привязки подстановки, созданный ранее. (В предыдущем примере родительский узел — это родительский узел. Узел клиентов ).

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

    Свойство Пояснение к параметру
    ItemsSource Это свойство указывает коллекцию или привязку, которая используется для получения данных, отображаемых в элементе управления. Visual Studio задает это свойство CollectionViewSource для родительских данных, которые вы перетаскивали в элемент управления.
    DisplayMemberPath Это свойство указывает путь элемента данных, отображаемого в элементе управления. Visual Studio задает этому свойству первый столбец или свойство в родительских данных после первичного ключа, имеющего строковый тип данных.

    Если вы хотите отобразить другой столбец или свойство в родительских данных, измените это свойство на путь другого свойства.
    SelectedValue Visual Studio привязывает это свойство к столбцу или свойству дочерних данных, перетаскиваемых в конструктор. Это внешний ключ для родительских данных.
    SelectedValuePath Visual Studio задает этому свойству путь к столбцу или свойству дочерних данных, которые являются внешним ключом для родительских данных.