开发者

When to implement iNotifyPropertyChanged interface?

开发者 https://www.devze.com 2023-02-14 06:54 出处:网络
From my understanding, it appears that 开发者_运维知识库INotifyPropertyChanged is very useful when working with UI elements that are related to one object source. I\'m just curious as to why some clas

From my understanding, it appears that 开发者_运维知识库INotifyPropertyChanged is very useful when working with UI elements that are related to one object source. I'm just curious as to why some classes in the .net framework which may in some way be used with the UI do not implement INotifyPropertyChanged? For example SerialPort class.

Is there a recommended guideline on the use of INotifyPropertyChanged? or have I totally misunderstood the concept of the interface?

This question was brought about after trying to link several custom user controls to the SerialPort class.


You understood the interface correctly.

But thinking SerialPort class is somehow related to UI is the bad thing. This class is supposed to allow access to this one resource. Nothing more, nothing less. If you want to somehow display information related to SerialPort, you should create your own business class, that will use SerialPort and expose needed information through properties and INotifyPropertyChanged.


Generally INotifyPropertyChanged is implemented on class having business logic of application developed for WPF or Silverlight.

If SerialPort class is used by other applications like WCF or Winform 2.0, INotifyPropertyChanged will be of little or no use.

Anyway its an interface that is understood by WPF framework engine. And You can create a business class which can implement INotifyPropertyChanged and internally hold SerialPort class.

Hope it makes sense.


INotifyPropertyChanged is to allow objects to communicate to their bindings, so in that sense your understanding is correct.

You can wrap the SerialPort to provide this.

I'm not sure why SerialPort doesn't implement this interface, so in that sense I can't answer that part of the question.

0

精彩评论

暂无评论...
验证码 换一张
取 消