在用户控件(这不是我的代码)中,我发现了部分代码,我不明白为什么要使用Independent而不是依赖属性。 有人可以解释一下。谢谢
<Label Content="{Binding Flow, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}" ContentStringFormat="{}{0:N1}" />
视图模型
private Independent<double> _flow = new Independent<double>(10.567);
public double Flow
{
get { return _flow; }
private set { _flow.Value = value; }
}
答案 0 :(得分:0)
好吧,通常依赖属性属于自定义控件&#39;代码背后,而不是视图模型。通常,您希望视图模型中的属性实现INotifyPropertyChanged
。此属性设置器中没有OnPropertyChanged或类似的调用,因此它可能是Value
中Independent<double>
属性的setter所做的。
我猜Independent<T>
是一个包装类,它引发OnPropertyChanged并执行其他一些操作,比如viewmodel property base
类。以ValueViewModel提到的here类为例。