首页 > 解决方案 > 当我更新属性时,texblock的文本不会改变,为什么?

问题描述

当我检查属性手册时,带有一个消息框,它显示了新值。但它不适用于文本块。

在此处输入图像描述

标签: c#wpfbinding

解决方案


PropertyChanged设置该属性的值时应引发该事件。

class BaseViewModel : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;

    protected void RaisePropertyChanged([CallerMemberName] string propertyName = null)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
    }

    protected void SetProperty<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
    {
        field = value;

        RaisePropertyChanged(propertyName);
    }
}
class StudentViewModel : BaseViewModel
{
    private string _messagee;
    public string Messagee
    {
        get => _messagee;
        set => SetProperty(ref _messagee, value);
    }
}

推荐阅读