我正在使用“ Simple MVVM Toolkit ”(MVVM
此处为 noob)来开发 C# WPF 应用程序。
我有一个名为的模型类A
:
public class A : ModelBase<A>
{
//properties, constructors, methods..
}
..和另一个模型类B
,它继承自A
但公开了一个A
没有的属性:
public class B : A
{
private string additionalProperty;
public string AdditionalProperty
{
get { return additionalProperty; }
set
{
additionalProperty = value;
//NotifyPropertyChanged(m => m.AdditionalProperty); <-- problem here
}
}
}
问题来自上面的注释行: lambda inNotifyPropertyChanged
将不起作用,因为m.AdditionalProperty
不存在,因为m
是 type A
, not B
。在这种情况下会发生什么?我应该注意,NotifyPropertyChanged
它是工具包附带的,不是自定义实现。
编辑:这是NotifyPropertyChanged
in的 IntelliSense 描述B
:
void ModelBaseCore<A>.NotifyPropertyChanged<TResult>(System.Linq.Expressions.Expression<Func<A,TResult>> property)
允许您为通知属性更改指定 lambda