Я пытаюсь переопределить метаданные ItemsControl.ItemsSourceProperty в производном классе, чтобы назначить мой собственный обратный вызов:
public class CustomDataGrid : System.Windows.Controls.DataGrid
{
static CustomDataGrid()
{
CustomDataGrid.ItemsSourceProperty.OverrideMetadata(typeof(CustomDataGrid), new UIPropertyMetadata(new PropertyChangedCallback(OnItemsSourcePropertyChanged)));
}
private static void OnItemsSourcePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{}
}
Я получаю конструктор + исключение времени выполнения:
Metadata override and base metadata must be of the same type
Что я делаю неправильно?