我一直在使用 Caliburn Micro MVVM 框架,并且在使用保护方法时遇到了一些问题。
我有一个视图模型:
public class MyViewModel : PropertyChangedBase, IMyViewModel
一个属性:
public DateTime? Date
{
get{return this.date; }
set
{
this.date = value;
this.NotifyOfPropertyChange(() => Date);
}
}
另外,我的视图模型中有一个带有保护方法的方法
public void Calculate()
{
// ..some code..
}
public bool CanCalculate()
{
return this.Date.HasValue;
}
在我看来还有一个按钮:
我遇到的问题是 CanCalculate 方法在加载时执行,但是当我在文本字段中输入值时,它不会重新评估 CanCalculate 方法。我在设置数据绑定视图模型属性时触发了属性更改事件,那么可能是什么问题?