【问题标题】:PropertyChanged in child properties [duplicate]子属性中的 PropertyChanged [重复]
【发布时间】:2019-11-07 11:33:08
【问题描述】:

当我在第 2 层或第 3 层绑定到子属性,并且子属性发生更改时,视图不会更新。例如

当 property1 更改时,视图不会从 Propertychanged 获得更新。

这是示例对象:

{
 public string property1 {get;set;}
 public string property2 {get;set;}
}

当我想要更新视图时,我必须这样做:

{
 private string _property1;
 public string property1
   {
     get{
      return _property1;
     }
     set{
      _property1 = value;
      OnPropertyChanged("property1");
     }
   }
}

我有很多属性,用重复的代码更改每个属性非常烦人,所以我有一个公共的 OnPropertyChanged 方法并将 null 传递给它,所以一切都会改变。它可以工作,但我认为这不是一个好的高性能解决方案来告诉视图,当只有一个属性发生变化时,一切都会发生变化。

有人知道更好的解决方案吗?

【问题讨论】:

  • 好吧不行,如果属性改变需要通知UI

标签: c# wpf xamarin mvvm inotifypropertychanged


【解决方案1】:

您可以使用PropertyChanged.Fody,这将在实现 INotifyPropertyChanged 的​​类中自动编写 getter 和 setter。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    • 2010-12-24
    • 2010-10-10
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    相关资源
    最近更新 更多