在我的wpf应用程序中,每当某个变量在我的ViewModel中发生变化时,我都会尝试更新标签。你知道为什么标签不会更新吗?
这就是我现在所拥有的:
XAML
<Label Name="myLabel" Content="{Binding myState}" />
myViewModel.cs
在构造函数中:
_MyObject.myEvent += myNewEvent;
以后......
private void myNewEvent(object sender, myArgs e)
{
myState = someStringVariable;
}
答案 0 :(得分:1)
可能,您需要将包含此标签的元素的DataContext
设置为您认为_MyObject
所代表的类型的实例。如果您已经这样做了,那么无论何时更改属性值都应该更新。
答案 1 :(得分:1)
我的猜测是你的ViewModel没有实现INotifyPropertyChanged
如果您希望UI反映ViewModel中属性的更改,则只要值发生更改,Viewmodel就必须在属性的setter中实现INotifyPropertyChanged
和引发PropertyChanged
事件。 / p>
了解更多信息: 的 How to: Implement the INotifyPropertyChanged Interface 强>