我有一个自定义控件,从一个数据网格继承。每次数据绑定到网格时,我都必须评估一个属性。我目前绑定使用DataSource =“{绑定....}”WPF拦截依赖项属性
有没有一种方法,我可以创建一个新的依赖项属性(?)哪些将被评估每次数据源属性更改?我可以以某种方式“附加”我的方法到数据源属性?
我希望我的意图清楚。
感谢您的任何想法。
我有一个自定义控件,从一个数据网格继承。每次数据绑定到网格时,我都必须评估一个属性。我目前绑定使用DataSource =“{绑定....}”WPF拦截依赖项属性
有没有一种方法,我可以创建一个新的依赖项属性(?)哪些将被评估每次数据源属性更改?我可以以某种方式“附加”我的方法到数据源属性?
我希望我的意图清楚。
感谢您的任何想法。
我能够通过重写OnPropertyChanged,并使用下面的代码与我的新的DependencyProperty一起处理这个问题 -
if(e.Property.Name = "DataSource")
{
// Invoke my new method
}
如果从DataGrid
继承,你可以重写OnItemsSourceChanged
方法,像这样:
protected override void OnItemsSourceChanged(IEnumerable oldValue, IEnumerable newValue)
{
// update your property here
base.OnItemsSourceChanged(oldValue, newValue);
}
其实我使用Infragistics的DataGrid中,所以O nItemsSourceChanged不可用。我会看看那里是否有类似的东西。 – czuroski
的可能重复[听依赖属性的变化(http://stackoverflow.com/questions/4764916/listen-to-changes-of-dependency-property) –