【发布时间】:2015-07-01 17:20:05
【问题描述】:
我的应用程序中有一个登录页面,页面上有一个文本框,显示错误的用户名/密码等情况。我正在从视图模型更新错误,但视图不会自动更改。
viewmodel 实现了 INotifyPropertyChanged 接口。
错误定义。
string _error;
public string Error
{
get { return _error; }
set
{
_error = value;
NotifyPropertyChanged("Error");
}
}
INotify 事件处理程序
public event PropertyChangedEventHandler PropertyChanged;
protected void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
更新
_error = "Wrong username/password!";
xaml
<TextBlock Text="{Binding Error, UpdateSourceTrigger=PropertyChanged}"/>
我还缺少什么?
【问题讨论】:
-
你设置了datacontext吗?并显示您的 XAML 绑定
-
你应该设置 Error 而不是 _error
-
我已经设置了数据上下文。其他字段(如用户名工作和登录等命令)在视图中完美绑定。
-
谢谢!使用 Error 而不是 _error 并且效果很好。
标签: c# wpf xaml data-binding inotifypropertychanged