我有一个继承自datagrid的自定义控件。每次数据绑定到网格时,我都要评估属性。我目前正在使用DataSource =“{Binding ....}”
进行绑定有没有办法可以创建一个新的依赖项属性(?),每次更改DataSource属性时都会对其进行评估?我可以以某种方式将我的方法“附加”到DataSource属性吗?
我希望我的意图很明确。
感谢您的任何想法。
答案 0 :(得分:1)
如果您继承自DataGrid
,则可以覆盖OnItemsSourceChanged
方法,如下所示:
protected override void OnItemsSourceChanged(IEnumerable oldValue, IEnumerable newValue)
{
// update your property here
base.OnItemsSourceChanged(oldValue, newValue);
}
答案 1 :(得分:0)
我能够通过覆盖OnPropertyChanged并使用以下代码和我的新依赖项属性来处理这个问题 -
if(e.Property.Name = "DataSource")
{
// Invoke my new method
}