Я искал этот сайт и нашел 2 ссылки
как загрузить wpf usercontrol в шаблоне MVVM
MVVM-Light: загрузить UserControl в окно
но я все еще не могу найти ответ на свою проблему и эту ссылку
Шаблон локатора MVVM-Light и многоразовый пользовательский элемент управления
Я не понял .... так вот я излагаю свою проблему, которая может помочь другим борющимся, как я ...
У меня есть MainWindow
, который состоит из 2 частей: одна имеет TreeView
(UserControl
), а другая отображает различные пользовательские элементы управления (с именем DisplayPanel) .... точно так же, как проводник Windows.
На панели дисплея с правой стороны будут отображаться различные пользовательские элементы управления при щелчке по узлам древовидной структуры.
а мой TreeView
сам является пользовательским элементом управления.
Как я могу заставить этот составной пользовательский интерфейс работать, используя MVVM
. Также я планирую использовать MVVM
light Toolkit. Есть ли здесь что-нибудь, что может помочь ...
Пример будет отличным
Спасибо... :)
Редактировать
My TreeView в UserControl
Я создал свойство зависимости в UserControl
, которое захватывает выбранный элемент для представления в виде дерева, чтобы я мог использовать это свойство зависимости для заполнения требуемого представления в привязке "MainView" ContentControl
.... как вы мне советовали в комментариях. Все до сих пор
Проблема в том, что я хочу отображать данные, содержащиеся в выбранном элементе, и я не могу установить DataContext для UserControls (который будет отображаться справа) для выбранного элемента, так как тогда я не смогу использовать свою модель представления для соответствующий пользовательский элемент управления для команд и других операций
Я тоже пытался решить эту проблему .... Я использовал Посредник (Посланник) в моей модели представления TreeViewUserControl, чтобы отправить сообщение в модель представления Usercontrol (ту, которую мне нужно отображать). Сообщение будет передаваться всякий раз, когда элемент выбран в древовидной структуре. и сообщение содержит выбранный узел. Я забыл упомянуть, что установил контекст данных UserControl для его модели представления, чтобы я мог отображать данные
Но при использовании этого подхода проблема заключается в том, что когда я щелкаю тип узла в первый раз, данные не заполняются, но если тот же тип узла щелкается снова, он заполняется. Что происходит, так это то, что объект UserControl
s становится доступным, когда элемент дерева щелкается в первый раз и посредник отправляет сообщение. Таким образом, Посредник не может передать сообщение модели представления userControl .....
У меня совершенно нет идеи решать эту проблему дальше .... это мой способ отображения прав пользователя или я должен сделать что-то еще .... полностью запутался .....