【发布时间】:2013-12-04 19:43:34
【问题描述】:
我正在使用INotifyPropertyChanged,以便类库中的域对象可以通知其执行方法的进度。这与 WPF 或 DataBinding 情况无关。
我已经阅读了关于PropertyChanged 事件的documentation 并且PropertyChangedEventArgs 只有一个PropertyName 属性:
当组件上的属性发生更改时会引发
PropertyChanged事件。PropertyChangedEventArgs对象指定已更改属性的名称。
PropertyChangedEventArgs提供PropertyName属性来获取更改的属性的名称。
问题是:我需要获取更改属性的 VALUE,而不是它的名称,所以我问:
有没有办法获取
PropertyChanged事件参数中的属性值?
(因为如果不是,我想我必须自己创建一个ReportProgress 事件,类似于BackgroundWorker 类,对吗?)
感谢阅读。
【问题讨论】:
-
sender.GetType().GetProperty("PropertyName").GetValue(sender, null) -
你为什么要为这个NPC?使用
IProgress<T>/Progress<T>。 -
@mikez 不幸的是,我在 VisualStudio 2010 中使用 C# 4.0 ... 那么您知道 INPC 的其他替代方案吗?谢谢!
标签: c#-4.0 inotifypropertychanged propertychanged