El comportamiento predeterminado de un WPF ContextMenu
es mostrarlo cuando el usuario hace clic con el botón derecho. Quiero que se muestre ContextMenu
cuando el usuario hace clic con el botón izquierdo. Parece que esto debería ser una propiedad simple en ContextMenu
, pero no lo es.Mostrar ContextMenu en el clic izquierdo usando solo XAML
Lo arreglé para que maneje el evento LeftMouseButtonDown
en el código subyacente y luego visualice el menú contextual.
Estoy usando MVVM en mi proyecto, lo que significa que estoy usando DataTemplate
s para los elementos que tienen los menús contextuales. Sería mucho más elegante deshacerse del código subyacente y encontrar una forma de mostrar el menú contextual usando activadores o propiedades en el XAML.
¿Alguna idea o solución a este problema?
Es una desviación del estándar en Windows, ¿tiene buena justificación para hacer esto? –
Ese es un buen punto, tal vez yo shou Debería usar algo que no sea el ContextMenu para hacer esto. Básicamente es un menú desplegable que aparece cuando haces clic en el elemento, no en un botón, sino en un botón.ContextMenu parecía una elección obvia, pero tal vez eso esté mal. – timothymcgrath
Consulte mi respuesta, que utiliza los desencadenantes de Expression Blend aquí: http://stackoverflow.com/a/4917707/87912 –