我使用PostSharp制作了我的ViewModel:
[NotifyPropertyChanged]
class ProfileSelectorViewModel
{
public int Selection { get; set; }
}
Selection
绑定到列表框的selection属性。我如何订阅此房产的更改?我希望在Selection
更改其值时调用方法。
答案 0 :(得分:2)
您可以通过投射PropertyChanged
类的对象来订阅ProfileSelectorViewModel
事件。由于您的工具可能会抱怨该类尚未实现接口INotifyPropertyChanged
,因此您可以使用辅助方法Post.Cast<SourceType, TargetType>(SourceType)
。
因此,如果您有obj
类型的对象ProfileSelectorViewModel
和处理更改的方法OnSelectionChanged
,则订阅如下所示:
Post.Cast<ProfileSelectorViewModel,INotifyPropertyChanged>(obj).PropertyChanged += OnSelectionChanged;
有关详细信息,请参阅http://doc.postsharp.net/inotifypropertychanged-add#consuming。