C# WPF文本块在运行时不会显示属性更改

C# WPF文本块在运行时不会显示属性更改,c#,wpf,visual-studio-2012,mvvm,.net-4.5,C#,Wpf,Visual Studio 2012,Mvvm,.net 4.5,我有一个文本块,如下所示 <TextBlock x:Name="lblErrorMessage" Grid.Row="2" Foreground="Red" Margin="{Binding ControlMargin}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Bac

我有一个文本块,如下所示

<TextBlock x:Name="lblErrorMessage" 
           Grid.Row="2" 
           Foreground="Red"   
           Margin="{Binding ControlMargin}" 
           HorizontalAlignment="Stretch" 
           VerticalAlignment="Stretch" 
           Background="Aqua"
           TextWrapping="Wrap" 
           Text="{Binding Error}"/>
我的问题是其他绑定可以工作,比如下面显示的边距,但是文本块lblErrorMessage绝对拒绝显示消息

如果我在构造函数中设置了Error属性,它就会显示出来。 如果我设置显示的_error变量

如果我在运行时设置属性,它似乎不会接受更改

我已经尝试了双向属性更改等设置的所有组合,但还没有香蕉

有什么想法吗?

总结一下评论

当错误发生更改时,当您使用正确的属性名称引发PropertyChanged事件时,您发布的代码是正确的,但如果您的类未实现INotifyPropertyChanged接口,则这将不起作用

public class MyViewModel: INotifyPropertyChanged
总结评论

当错误发生更改时,当您使用正确的属性名称引发PropertyChanged事件时,您发布的代码是正确的,但如果您的类未实现INotifyPropertyChanged接口,则这将不起作用

public class MyViewModel: INotifyPropertyChanged

尝试将道具从Error重命名为其他名称?@StevenWood,假设KKBKK最初显示,此代码应该可以工作。我可以看到您引发了PropertyChanged事件,但是您的类实现了INotifyPropertyChanged接口吗?天哪!我已经声明了PropertyChanged事件,但我没有继承IPropertyChanged接口。将此作为答案,我很乐意接受尝试将道具从错误重命名为其他内容?@StevenWood,假设KKBKK最初显示,此代码应该可以工作。我可以看到您引发了PropertyChanged事件,但是您的类实现了INotifyPropertyChanged接口吗?天哪!我已经声明了PropertyChanged事件,但我没有继承IPropertyChanged接口。把这个作为答案,我很乐意接受
public class MyViewModel: INotifyPropertyChanged