Я пытаюсь получить имя свойства, связанного с конкретным DataGridColumn, чтобы затем я мог делать некоторые вещи на основе этого. Эта функция вызывается, когда пользователь нажимает элемент контекстного меню на заголовке столбца...
Это хорошо для готовых готовых типов столбцов типа DataGridTextColumn, поскольку они связаны, но проблема в том, что некоторые из моих столбцов DataGridTemplateColumns, которые не связаны.
private void GroupByField_Click (object sender, RoutedEventArgs e){
MenuItem mi = (MenuItem)sender;
ContextMenu cm = (ContextMenu) mi.Parent;
DataGridColumnHeader dgch = (DataGridColumnHeader) cm.PlacementTarget;
DataGridBoundColumn dgbc = (DataGridBoundColumn) dgch.Column;
Binding binding = (Binding) dgbc.Binding;
string BoundPropName = binding.Path.Path;
//Do stuff based on bound property name here...
}
Итак, возьмите, например, мой столбец Name... it a DataGridTemplateColumn (так как у него есть изображение и некоторые другие вещи там). Поэтому он фактически не связан с свойством "Имя"... но я хотел бы быть таким, чтобы этот код работал.
Мой вопрос - двухчастный, действительно:
-
Можно ли сделать
DataGridTemplateColumnBOUND, чтобы приведенный выше код работал? Можно ли каким-либо образом привязать его к свойству? -
Или мне нужно что-то совершенно другое и изменить код выше?
Спасибо заранее!
в