gpt4 book ai didi

c# - 字段更改时,MVVM 对象触发属性更改事件

转载 作者:行者123 更新时间:2023-12-03 10:55:10 25 4
gpt4 key购买 nike

所以我有一个对象的 MVVM 绑定(bind)设置。该对象属于如下类:

public class SomeClass
{
public int Field1 {get; set:}
public List<MyClass> CollectionOfObjects {get; set;}
public string Description {get; set;}
}

我的 MVVM 类实现了 INotifyPropertyChanged ...
private SomeClass _viewableObject;
public SomeClass ViewableObject
{
get
{
return _viewableObject;
}
set
{
_viewableObject = value;
OnPropertyChanged("ViewableObject");
}


}

这在我定义一个新对象的情况下非常有用。例如:
 ViewableObject = new SomeClass();

但我将 UI 组件绑定(bind)到 SomeClass 的字段。 . Field1Description被推送到文本框并说 CollectionOfObjects被推送到 DataGrid .
<Datagrid .... ItemsSource = "{Binding ViewableObject.CollectionOfObjects}" ></DataGrid>

所以如果我只更新 ViewableObject.CollectionOfObjects而不是全部 ViewableObject如何让 UI 更新以反射(reflect)修改?有没有更简洁的方法来做到这一点,而不是拆分 SomeClass 的每个字段?在 MVVM 中?

最佳答案

您可以创建自己的集合来实现 INotifyCollectionChanged ,但您会发现只使用 ObservableCollection 会更容易。已经这样做了。

关于c# - 字段更改时,MVVM 对象触发属性更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25091036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com