gpt4 book ai didi

c# - 对 ObservableCollection 中更改的对象使用react

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

我有一个 ObservableCollection<Person>在我的 View 模型中。这被绑定(bind)为 ItemsSource到 View 中的 DataGrid。 Person 类只有三个属性:

 public class Person : ViewModelBase
{
private Guid id;
public Guid Id
{
get { return this.id; }
set
{
this.id = value;
OnPropertyChanged("Id");
}
}

private string firstname;
public string Firstname
{
get { return this.firstname; }
set
{
this.firstname = value;
OnPropertyChanged("Firstname");
}
}

private string lastname;
public string Lastname
{
get { return this.lastname; }
set
{
this.lastname = value;
OnPropertyChanged("Lastname");
}
}
}

ViewModelBase 类实现 INotifyPropertyChanged。

如果我在日期网格中添加或删除条目,则集合中的项目将完美更新。然后该项目也会从集合中删除。

我的问题是人员项目的内容已更新,但我不知道如何对此使用react。

我是否必须向人员类添加事件或其他内容才能获得通知,或者是否有其他方法可以做到这一点?

最佳答案

实现INotifyPropertyChanged类里面的界面Person这样 Person 属性的任何更改都会反射(reflect)在 UI 上。

样本 -

public class Person : INotifyPropertyChanged
{
private Guid id;
public Guid Id
{
get { return id; }
private set
{
if(id != value)
{
id = value;
NotifyPropertyChanged("Id");
}
}

public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}

关于c# - 对 ObservableCollection 中更改的对象使用react,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19796564/

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