2015-02-22 3 views
0

Im new для MVVM и XAML. В настоящее время приложение, которое я должен продлить, является своего рода imageviewer. Он использует MVVM с RelayCommand. В настоящее время код файла моего XAML-файла почти пуст.MVVM: Пропустить Параметр из viewmodel для просмотра

Данные отображаются с привязкой данных к мосту просмотра, а взаимодействие пользователя связано с командой модели.

Но теперь мне нужно отобразить изображение, которое является настраиваемым элементом управления. В XAML я должен установить Border-Control, а элемент управления должен быть инициализирован в файле, находящемся за кодом.

Мой вопрос заключается в том, как выполнить настройку при выполнении MVVM.

псевдокод:

View{ 

initPDFControl(){ 

borderControl.DoMagic(); 
}; 

openImage(String path); 
} 

ViewModel{ 

openImage(){ 

getMyView.openImage(pathFromModel); 
} 

} 

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

+0

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

+0

Неверный код C#. – poke

ответ

3

Из примера, который вы указали, похоже, что вы не знаете шаблон MVVM. Вид (XAML) связан с классом viewmodel. ViewModel не должен знать о каких-либо Представлениях. Но мнение осознает его viewModel. Вы должны написать команды в viewModel, а не в модели. Вы должны получить доступ к классу модели из viewModel. Сначала поймите образец, а затем перейдите к кодированию. В Nuget имеется множество библиотек MVVM (например, MVVMLight, Prism), вы можете использовать их в своем коде.

Вы можете посмотреть эти ссылки для понимания концепции.

Model-View-ViewModel-MVVM-Explained

WPF-MVVM-step-by-step-Basics-to-Advance-Level

MSDN-Implementing the MVVM Pattern Using the Prism Library

Смежные вопросы