Ich habe eine C#
. Im XAML
ich habe eine Datagrid
, auf die ich hinzugefügt haben eine ContextMenu
, die wie folgt aussieht:C# WPF ContextMenu: MenuItem reagiert nicht auf Klick
<DataGrid.ContextMenu>
<ContextMenu ItemsSource="{Binding Categories}">
<ContextMenu.ItemTemplate>
<DataTemplate>
<MenuItem Header="{Binding Name}" Background="{Binding Brush}" Click="MenuItem_Click" Tag="{Binding Id}" />
</DataTemplate>
</ContextMenu.ItemTemplate>
</ContextMenu>
</DataGrid.ContextMenu>
Wenn die Anwendung mit es wie folgt aussieht: http://imgur.com/3UTj1Xd
Das Problem ist, dass, wenn Sie auf den Button Farbe Teil der Box (die ich vermute, ist Teil eines internen Gitters) das MenuItem_Click
Ereignis ausgelöst wird. Wenn ich jedoch auf den grauen Teil von MenuItem
klicke, wird das Klickereignis nicht ausgelöst. Weiß jemand, warum es sich so verhält? Und gibt es eine Möglichkeit, das zu beheben?
Darüber hinaus wäre es toll, in der Lage zu sein, den gesamten Menüpunkt, nicht nur die kleine Box im Inneren zu färben. Gibt es eine Möglichkeit, dies zu tun?
der "Grau Part" ist das Kontextmenü von selbst aus. Sie haben Click Event Handler auf Menu Items beschränkt, so dass es funktioniert, wenn Sie darauf klicken. Es darf nicht funktionieren, wenn Sie auf Kontextmenü klicken. Sie können versuchen, Ränder zwischen Menüelementen zu entfernen, um diese graue Zone zu entfernen. –