在通知 View fx 时,我不确定为什么要使用 RaisePropertyChanging :

 private LoggingLvl _myLoggingLvl;
    public LoggingLvl MyLoggingLvl
    {
        get { return _myLoggingLvl; }
        set
        {
            RaisePropertyChanging("MyLoggingLvl");
            _myLoggingLvl = value;
            RaisePropertyChanged("MyLoggingLvl");
        }
    }

为什么推荐使用 RaisePropertyChanging

最佳答案

在应用更改之前,使用 INotifyPropertyChanging 将允许使用代码有机会使用属性的先前值。这并不经常有用,但在某些情况下可能有用:如果您想象一个表示“事件对象”的属性,则此事件将允许您触发将在对象停用时触发的代码。

作为一个人为的示例,考虑一个 UI,其中需要以特定方式显示字段值的更改:旧值应该“ float ”离开屏幕,留下新值。如果模型类实现了 INotifyPropertyChanging ,则 View 模型类可以附加到此事件以缓存旧值以用于 float 动画。这允许模型类表示当前状态,而 View 模型可以维护驱动 UI 所需的所有值。

关于C# RaisePropertyChanging?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16333771/

10-10 23:27