在一个C# WPF项目中,我开始使用MVVM社区工具包,我的问题是关于属性的。假设我有一个模型,它有一些属性:
public class TheModel
{
public bool FirstProp {get; set;}
public int SecondProp {get; set;}
}
字符串
然后我有一个Viewmodel,其中包含该Model的示例,通常我会像这样设置属性:
public class TheViewModel : ObservableObject
{
private readonly TheModel _theModel;
public bool FirstProp
{
get => _theModel.FirstProp;
set
{
if (_theModel.FirstProp != value)
{
_theModel.FirstProp = value;
OnPropertyChanged();
}
}
}
public int SecondProp
{
get => _theModel.SecondProp;
set
{
if (_theModel.SecondProp != value)
{
_theModel.SecondProp = value;
OnPropertyChanged();
}
}
}
public TheViewModel(TheModel theModel)
{
_theModel = theModel;
}
}
型
我的问题是:我想知道MVVM Community toolkit是否提供了一种更短的方法来设置视图模型中的属性(如FirstProp和SecondProp
上面的代码是工作的,但如果你有很多属性,它变得无聊,写他们所有
1条答案
按热度按时间snvhrwxg1#
可以使用SetProperty方法:
字符串
它会为你检查值并调用OnPropertyChanged。它是否比其他的代码更少,我留给你。