使用可绑定的基础 WPF 从源更新目标

Update the target from the source with bindable base WPF

这在视图模型中是可绑定的属性

    private string _tooltip;
    public string Tooltip
    {
        get { return _tooltip; }
        set
        {
            _tooltip = value;
            SetProperty(ref _tooltip, value);
        }
    }

xaml

<TextBox HorizontalAlignment="Stretch"
                             Margin="2"
                             Text="{Binding  Path=Tooltip, Mode=TwoWay}"
                             MinWidth="40"
                             Height="24" />

在视图模型中更改此工具提示时,视图不会更新。如何将视图从源更新到目标?

来自BindableBase.SetProperty的联机文档:

Checks if a property already matches a desired value. Sets the property and notifies listeners only when necessary.

所以您不能在 SetProperty 之前调用 _tooltip = value,因为如果您这样做,SetProperty 将不会触发 PropertyChanged 事件:

private string _tooltip;
public string Tooltip
{
    get { return _tooltip; }
    set { SetProperty(ref _tooltip, value); }
}