C# 何时在windows phone项目中实现INotifyPropertyChanged

C# 何时在windows phone项目中实现INotifyPropertyChanged,c#,windows-phone-7,mvvm,C#,Windows Phone 7,Mvvm,我从一个基于MVVM方法的新项目开始。我将从某个web服务异步加载一些数据。我不知道在viewmodel、model或两者中在何处实现此INotifyPropertyChanged接口。 另外,如果我在一个模型上实现INotifyPropertyChanged(我们称之为ModelA)。然后我创建了一个ObservableCollection,它会不会是多余的,因为ObservableCollection本身会跟踪对列表所做的任何数据更改?答案很简单。如果您需要您的模型来实现INotifyPro

我从一个基于
MVVM
方法的新项目开始。我将从某个web服务异步加载一些数据。我不知道在viewmodel、model或两者中在何处实现此
INotifyPropertyChanged
接口。
另外,如果我在一个模型上实现INotifyPropertyChanged(我们称之为ModelA)。然后我创建了一个
ObservableCollection
,它会不会是多余的,因为
ObservableCollection
本身会跟踪对列表所做的任何数据更改?

答案很简单。如果您需要您的模型来实现INotifyPropertyChanged,那么它应该。冗余与否如果您需要跟踪单个属性,则最好使用该事件而不是ObservableCollection。

答案很简单。如果您需要您的模型来实现INotifyPropertyChanged,那么它应该。冗余与否如果您需要跟踪单个属性,则最好使用该事件而不是ObservableCollection。

答案很简单。如果您需要您的模型来实现INotifyPropertyChanged,那么它应该。冗余与否如果您需要跟踪单个属性,则最好使用该事件而不是ObservableCollection。

答案很简单。如果您需要您的模型来实现INotifyPropertyChanged,那么它应该。冗余与否如果您需要跟踪单个属性,则最好使用该事件而不是ObservableCollection。

ObservableCollection
类仅在执行以下操作时更新UI:

  • 项目已添加到集合中
  • 项目已从集合中删除
  • 收集是明确的
但是,如果基础项中的任何
属性更改
,即您的情况下的
ModelA
,它将不会反映在UI上,除非您的模型类正在实现
INotifyPropertyChanged
接口并在属性更改时引发PropertyChanged事件


因此,作为一条经验法则,您应该在
ViewModel
层和
Model
层实现
INPC

ObservableCollection
类仅在以下操作情况下更新UI:

  • 项目已添加到集合中
  • 项目已从集合中删除
  • 收集是明确的
但是,如果基础项中的任何
属性更改
,即您的情况下的
ModelA
,它将不会反映在UI上,除非您的模型类正在实现
INotifyPropertyChanged
接口并在属性更改时引发PropertyChanged事件


因此,作为一条经验法则,您应该在
ViewModel
层和
Model
层实现
INPC

ObservableCollection
类仅在以下操作情况下更新UI:

  • 项目已添加到集合中
  • 项目已从集合中删除
  • 收集是明确的
但是,如果基础项中的任何
属性更改
,即您的情况下的
ModelA
,它将不会反映在UI上,除非您的模型类正在实现
INotifyPropertyChanged
接口并在属性更改时引发PropertyChanged事件


因此,作为一条经验法则,您应该在
ViewModel
层和
Model
层实现
INPC

ObservableCollection
类仅在以下操作情况下更新UI:

  • 项目已添加到集合中
  • 项目已从集合中删除
  • 收集是明确的
但是,如果基础项中的任何
属性更改
,即您的情况下的
ModelA
,它将不会反映在UI上,除非您的模型类正在实现
INotifyPropertyChanged
接口并在属性更改时引发PropertyChanged事件


因此,作为一条经验法则,您应该在
ViewModel
层和
Model
层实现
INPC

实际上,您需要实现INotifyPropertyChanged到对象,这些对象的属性将使用数据绑定显示在UI中。如果您将UI直接绑定到模型的属性,那么您也需要在模型中实现它


ObservableCollection仅在从集合中添加或删除对象时通知UI。若要在ObservableCollection中的一个或多个对象的属性发生更改时通知UI,您仍然需要在该对象类中实现INotifyPropertyChanged。

实际上,您需要实现INotifyPropertyChanged以使用数据绑定在UI中显示其属性的对象。如果您将UI直接绑定到模型的属性,那么您也需要在模型中实现它


ObservableCollection仅在从集合中添加或删除对象时通知UI。若要在ObservableCollection中的一个或多个对象的属性发生更改时通知UI,您仍然需要在该对象类中实现INotifyPropertyChanged。

实际上,您需要实现INotifyPropertyChanged以使用数据绑定在UI中显示其属性的对象。如果您将UI直接绑定到模型的属性,那么您也需要在模型中实现它


ObservableCollection仅在从集合中添加或删除对象时通知UI。若要在ObservableCollection中的一个或多个对象的属性发生更改时通知UI,您仍然需要在该对象类中实现INotifyPropertyChanged。

实际上,您需要实现INotifyPropertyChanged以使用数据绑定在UI中显示其属性的对象。如果您将UI直接绑定到模型的属性,那么您也需要在模型中实现它

ObservableCollection仅在从集合中添加或删除对象时通知UI。当一个或多个ob的属性