Связывание WPF между элементами управления - PullRequest
0 голосов
/ 27 апреля 2010

У меня есть элемент управления на странице, которая содержит список. У меня также есть другой элемент управления, который является подробным представлением.

Оба элемента управления имеют собственную ViewModel, к которой привязываются их дочерние элементы управления.

Изображение Outlook. В нем есть список папок, и при выборе папки подробный элемент управления отображает содержимое папки.

Как связать элемент управления сведениями с выбранным элементом в элементе управления списком?

Ответы [ 2 ]

0 голосов
/ 28 апреля 2010

Использовать привязку к элементу, здесь как ссылку на страницу MSDN http://msdn.microsoft.com/en-us/library/ms752347.aspx с примером master-detail.

0 голосов
/ 27 апреля 2010

Если я правильно понял, у вас ситуация с мастер-деталями. Можете ли вы добавить список деталей ViewModel как свойство мастера ViewModel? Таким образом, вам не нужно ничего особенного. Это должно работать автоматически. Примерно так:

public class MyMasterViewModel
{
   public List<MyDetailViewModel> Details
   { get; set; }
}

Установить набор MyMasterViewModel как DataContext для обоих представлений и настроить привязку соответствующим образом. При перемещении по основному списку подробный список будет автоматически обновляться.
Возможно, вам понадобится установить свойство IsSynchronizedWithCurrentItem:

<ListBox ItemsSource="{Binding}" 
         IsSynchronizedWithCurrentItem="True"
         DisplayMemberPath="Something"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...