Tengo un escenario en el que tengo un control TreeView de WPF que tiene un HierarchicalDataTemplate
para sus elementos. Ahora dentro del HierarchicalDataTemplate
, tengo un Label
y el Label
tiene un ContextMenu
con un elemento de menú para Delete
. El elemento de menú Eliminar está vinculado a un comando llamado DeleteCommand
que forma parte de la clase que se ha establecido como DataType
del HierarchicalDataTemplate
.Parámetros de mandato en ContextMenu en WPF
Ahora, yo quiero pasar el control TreeView
en el CommandParameters
del ContextMenu de Delete
menuitem de DeleteCommand
para que pueda manejar la selección de los TreeViewItems sobre la supresión del elemento actualmente seleccionado.
Pero si vinculo el CommandParameters
como el {Binding ElementName=TreeViewName}
o lo que sea, es siempre nulo a menos que el elemento encuadernado sea una propiedad en el DataContext
.
¿Alguien puede ayudarme con una solución porque creo que he intentado todas las cosas posibles, como RelativeSource y AncestorType, etc., pero siempre es nula. Para mí, parece una limitación o un error en el marco.
manera fácil: –
JoanComasFdz
@JoanComas: después de probar todos los demás sin éxito (ni entender lo que significaba todo aquello con FindAncestors, etc.), su forma Way Way funciona perfectamente. Gracias. – joedotnot
El comentario de @JoanComasFdz es realmente de ayuda. Puedo aplicar 'CommandParameter =" {Binding} "' simplemente. – Youngjae