C# 将参数传递给ViewModel并显示其数据
我已经创建了一个使用WPF和MVVM的应用程序 我有一个视图,C# 将参数传递给ViewModel并显示其数据,c#,wpf,visual-studio-2010,C#,Wpf,Visual Studio 2010,我已经创建了一个使用WPF和MVVM的应用程序 我有一个视图,TVSeriesView,它有一个TVSeriesView模型。这两个模块使用DataTemplate连接,DataTemplate在本文之后完成 这样做的目的是将我的模型TVSeries传递给这个ViewModel,因为我在ViewModel中有一个名为TVSeries的属性。设置此属性后,我将填充其他属性,如标题、封面等。这些属性将绑定到视图中的控件 public class TVSeriesViewModel : ViewM
TVSeriesView
,它有一个TVSeriesView模型
。这两个模块使用DataTemplate连接,DataTemplate在本文之后完成
这样做的目的是将我的模型TVSeries
传递给这个ViewModel,因为我在ViewModel中有一个名为TVSeries
的属性。设置此属性后,我将填充其他属性,如标题
、封面
等。这些属性将绑定到视图中的控件
public class TVSeriesViewModel : ViewModelBase, ITVSeriesViewModel
{
private TVSeries _tvSeries;
private string _title;
private ImageSource _cover;
public TVSeries TVSeries
{
get
{
return this._tvSeries;
}
set
{
this._tvSeries = value;
}
}
public string Title
{
get
{
return this._title;
}
set
{
this._title = value;
OnPropertyChanged("Title");
}
}
public ImageSource Cover
{
get
{
return this._cover;
}
set
{
this._cover = value;
OnPropertyChanged("Cover");
}
}
}
首先也是最重要的,这听起来像是正确的方式吗
接下来,当显示TVSeriesView
时,是否有人知道如何将参数(一个TVSeries
对象)传递给ViewModel
最后,有人知道我如何直接访问视图中的资源吗?例如,如果我不想使用数据绑定,而是想直接这样设置图像:
myImage.ImageSource=myImageSource
视图和视图模型是模型的可能表示形式之一
您可以传递一个存储库句柄,该句柄最终将负责数据访问或存储
通过构造函数或依赖项注入,通过属性/方法或 用更简单的方式,您可以在VM中编写DB访问代码(显然不建议这样做)
我更喜欢这里的订单。您的代码正在执行第三个选项。当您不想使用绑定时,为什么要创建viewmodel?您是对的。我相信我会使用数据绑定。我只是觉得有时候直接访问控件可能更容易。我不确定我是否理解。我能请你举个例子吗?