MVVM:将参数从viewmodel传递到视图

时间:2015-02-22 14:01:21

标签: c# xaml mvvm windows-store-apps

我是MVVM和XAML的新手。目前我必须扩展的应用程序是某种imageviewer。它使用MVVM和RelayCommand。目前,我的XAML文件的代码隐藏文件几乎是空的。

显示数据时,数据绑定到视图模型,用户交互与命令绑定到模型。

但是现在我需要显示一个自定义控件的图像。在XAML中,我必须放置一个Border-Control,并且必须在代码隐藏文件中初始化控件。

我的问题是如何在关注MVVM时进行设置。

伪代码:

View{

initPDFControl(){

borderControl.DoMagic();
};

openImage(String path);
}

ViewModel{

openImage(){

getMyView.openImage(pathFromModel);
}

}

您可以通过将我链接到有用的教程或记下一些伪代码来帮助我。

1 个答案:

答案 0 :(得分: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

相关问题