我在我的视图模型中添加了一个模型:
public dal.UserAccount User {
get
{
return _user;
}
set
{
_user = value;
RaisePropertyChanged(String.Empty);
}
}
我处理属性更改事件...
public event PropertyChangedEventHandler PropertyChanged;
private void RaisePropertyChanged(string propertyName)
{
if (this.PropertyChanged != null)
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
这是我使用的绑定:
<TextBox Text="{Binding User.firstname, Mode=TwoWay, ValidatesOnDataErrors=True, UpdateSourceTrigger=PropertyChanged}" />
为什么在更新视图时不触发propertychange事件?
string.Empty
。你可以将你的RaisePropertyChanged
方法原型化为void RaisePropertyChanged([CallerMemberName] string propertyName = null)
,并向其中发送无参数,这样你的调用者名称将被用作参数值。 - Stas BZ