WPF Привязка ADO.Net Entity Framework к ComboBox - PullRequest
1 голос
/ 22 июня 2010

Я работаю над небольшой системой для летнего лагеря в WPF.У меня есть база данных, которая связана через ADO.Net Entity Framework.Он содержит две таблицы;Кемперы и койки.Структура выглядит следующим образом:

Кемперы

  • CustomerID, INT (ключ)
  • Имя, NVARCHAR
  • BunkID, INT

Bunks

  • BunkID, INT (ключ)
  • Имя, NVARCHAR

Существует связь с внешним ключом для связи между Campers.BunkID & Bunks.BunkID

Я создал окно WPF, которое состоит из ListBox всех клиентов и UserControl , который отображает информацию о клиенте, выбранном в ListBox . UserControl состоит из TextBlock для CamperID , TextBox для Name Camper и ComboBox для Bunk дома для кемперов.

Теперь самая сложная часть ... У меня два вопроса:

  1. Какой метод самый лучший?связать список всех Campers с ListBox ?Каков наилучший способ связать список всех Сундуков с ComboBox в UserControl ?
  2. Я не могу понять, какпривязывайте ComboBox правильно, чтобы он отображал Bunk для каждого Camper и мог быть обновлен путем изменения значения.

В настоящее время я делаю и то, и другое в коде C #, но, учитывая силу WPF, я не могу представить, что более простого и лучшего решения не существует ...

Заранее спасибо!

Майк

1 Ответ

0 голосов
/ 12 декабря 2011

Вы должны сделать 3 вещи:

  1. Установите свойство ItemSource объекта ListBox для объекта Campers (я предполагаю, что это IEnumerable некоторого вида ..)
  2. Установите для свойства DisplayMemeberPath фактическое свойство, которое вы хотите отобразить в ListBox (например, «CustomerFirstName»). Если вы хотите, чтобы он был немного сложнее, вы можете создать свой собственный DataTemplate и представить все, что хотите (более одного свойства, изображения и т. Д.)
  3. Свяжите UserControl с выбранным элементом ListBox:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...