订阅当前选定实体的 PropertyChanged 事件是不好的做法。假设我有一个绑定到 List 的网格,并且我已将 Grid 的 SelectedItem 绑定到 ViewModel 的 SelectedItem 属性。
private Customer _selectedItem;
public Customer SelectedItem
{
get {return _selectedItem;}
set
{
if (!ReferenceEquals(_selectedItem, value))
{
_selectedItem = value;
RaisePropertyChanged(()=>SeletedItem);
_selectedItem.PropertyChanged += OnCustomerPropertyChanged;
}
}
}
这段代码是否有任何缺点,性能方面,内存泄漏方面,或者像这样使用它是安全的?