Привязка MVVM - создание элемента управления в представлении, как привязать к свойству во ViewModel? - PullRequest
1 голос
/ 01 июля 2011

Мы добавляем tabcontrols в наше приложение во время выполнения. Каждому tabcontrol присваивается ViewModel как DataContext. Мы добавляем tabcontrols, отправляя сообщение в главное приложение View; сообщение содержит модель представления, которая будет использоваться как текстовый текст.

Из основного приложения ViewModel мы добавляем табличные элементы в элементы управления вкладками, отправляя сообщение в основное представление приложения, чтобы создать TabItem и добавить его в указанный TabControl.

Я хотел бы связать определенные свойства TabItem с определенными свойствами ViewModel TabControl; это должно быть сделано программно, конечно.

Поскольку tabcontrol и tabitem не знают о ViewModels (только DataContext), как мне указать свойства ViewModel для привязки свойств tabitem?

Спасибо за любой совет ...

    Messenger.Default.Register<AddTabControlMessage>(this, m =>  
    {
     TabControl tc = new TabControl();
     tc.DataContext = m.ViewModel;
     // etc.
    } );

1 Ответ

0 голосов
/ 01 июля 2011

Вы можете привести DataContext к типу ViewModel и затем получить доступ к свойствам таким образом.

tc.SomeProperty = ((MyViewModel)DataContext).SomeVMProperty;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...