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