Estoy tratando de obtener el nombre de la propiedad asociada con una determinada DataGridColumn
, de modo que pueda entonces hacer algunas cosas en base a eso. Esta función se invoca cuando el usuario hace clic en el elemento del menú contextual en el encabezado de la columna ...WPF - Cómo enlazar un DataGridTemplateColumn
Esto está bien para los tipos de columnas listas para usar listas para usar como DataGridTextColumn
, ya que están vinculados, pero el problema es que algunas de mis columnas son DataGridTemplateColumns
, que no están vinculadas.
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...
}
lo tanto, tomar, por ejemplo, mi columna Name
... es un DataGridTemplateColumn
(ya que tiene una imagen y algunas otras cosas de allí). Por lo tanto, en realidad no está vinculado a la propiedad 'Nombre' ... pero me gustaría serlo, de modo que el código anterior funcione.
Mi pregunta es de dos partes, en realidad:
¿Es posible hacer una
DataGridTemplateColumn
obligarse, por lo que el código anterior podría trabajar? ¿Puedo vincularlo de alguna manera a una propiedad?¿O necesito algo completamente diferente y cambiar el código anterior?
¡Gracias de antemano!
EN