Я написал шаблон для menuItem, внутри которого у меня есть кнопка Toggle, которая, в свою очередь, имеет шаблон. В шаблоне кнопки я предоставляю разные визуальные эффекты для разных визуальных состояний кнопки, изменяя прозрачность разных границ. Теперь скажите, что при нажатии элемента меню отображается эффект нажатия на кнопку действия. но когда я снова наведу курсор мыши на этот элемент меню, я ожидаю, что он будет иметь тот же подсвеченный эффект даже в проверенном состоянии переключателя. Но выделенный эффект применяется ко всему элементу меню, кроме этой кнопки переключения, только потому, что событие наведения не распространяется на кнопку.
Хотел приложить изображение, чтобы прояснить проблему, но так как я новичок в этом, мне не разрешено это делать.
Как я могу установить непрозрачность границы, которая дает эффект щелчка на 0, когда выделен пункт меню?!
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Icon"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" SharedSizeGroup="Shortcut"/>
</Grid.ColumnDefinitions>
<Grid x:Name="stackPanel" Background="{StaticResource DataLayerPanelBackGroundColorBrush}" >
<Grid.Resources>
<ResourceDictionary Source="../Themes/Framework.xaml"/>
</Grid.Resources>
<Border x:Name="backgroundMouseOverVisual2" BorderThickness="0,0,0,0" Margin="0,3,0,3"
Background="{StaticResource ActionButtonMouseOverBackgroundColorBrush}" Opacity="0"/>
<local:ActionButton DataContext="{TemplateBinding Tag}" x:Name="actionButton" Background="White"
MultiActionIdent="{Binding Converter={StaticResource ActionToIdentConverter}}"
SnapsToDevicePixels="True" Style="{StaticResource MultiActionMenuItemActionButtonStyle}" Margin="0"
/>
</Grid>
<StackPanel x:Name="contentStackPanel" Background="{StaticResource DataLayerPanelBackGroundColorBrush}" Grid.Column="1">
<ContentPresenter
TextElement.Foreground="{StaticResource MenuTextColorBrush}"
SnapsToDevicePixels="True"
Name="HeaderHost"
ContentSource="Header"
RecognizesAccessKey="True"
Width="Auto"
Margin="10,4,35,4" />
</StackPanel>
<TextBlock
x:Name="InputGestureText"
Grid.Column="2"
Text="{TemplateBinding InputGestureText}"
DockPanel.Dock="Right" />
</Grid>
<Border x:Name="Border" BorderThickness="0.5" Margin="1,1,1,1" Padding="2,2,2,2" BorderBrush="Black" Background="{x:Null}" Opacity="0"/>
</Grid>
И ниже шаблон ToggleButton, который в приведенном выше шаблоне назван actionButton: