Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 更改对象实例属性在其任何属性更改时更改_Wpf - Fatal编程技术网

Wpf 更改对象实例属性在其任何属性更改时更改

Wpf 更改对象实例属性在其任何属性更改时更改,wpf,Wpf,我有一节简单的课。我可以更改它的属性并得到通知。但是,当我更改对象实例的任何属性时,该属性不会更改。如何更改object instance属性changed以引发以下事件 public class A : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public int _id; public int Id { get { r

我有一节简单的课。我可以更改它的属性并得到通知。但是,当我更改对象实例的任何属性时,该属性不会更改。如何更改object instance属性changed以引发以下事件

public class A : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;

    public int _id;
    public int Id
    {
        get { return _id; }
        set
        {
            if (_id == value)
            {
                return;
            }

            _id = value;
            OnPropertyChanged("Id"); 
        }
    }

    public string _name;
    public string Name
    {
        get { return _name; }
        set
        {
            if (_name == value)
            {
                return;
            }

            _name = value; 
            OnPropertyChanged("Name"); 
        }
    }
}



foreach (INotifyPropertyChanged item in new ObservableCollection<A>() )
         item.PropertyChanged += new PropertyChangedEventHandler(Item_PropertyChanged);

    private void Item_PropertyChanged(object sender, PropertyChangedEventArgs e)
    {

    }

这个问题在西蒙的回答2中给出了一个可能的解决方案。他继承了ObservaleCollection,并将collections eventshandler挂接到每个items property changed事件。

我不知道您对object instance属性的确切含义,当我更改它的任何属性时,changed属性不会更改。你能多告诉我一点你的目标吗?公共事件PropertyChangedEventHandler PropertyChanged是您在OnPropertyChangedpropertyName方法中引发的事件。我有一个对象a的集合。我的集合已通知集合已更改的事件处理程序。当任何集合项属性发生更改时,它将引发一个事件。问题是当我更改我的itemA propertiesID或Name时,它不会更改我的Item A PropertyChanged,因此不会引发我的事件。new ObservableCollection中没有A项