当鼠标悬停在上下文菜单上时,使文本变为粗体

时间:2015-10-20 10:54:18

标签: wpf mouseevent contextmenu highlighting

我想知道当鼠标悬停在上下文菜单中的文本时如何更改文本?我希望文本变得粗体但不知道如何做到这一点。任何帮助,将不胜感激 :)。这是包含图像的菜单项的资源样式,我认为应该把它放在哪里

XAML

<Style x:Key="MenuItemIcon" TargetType="MenuItem">
        <Style.Resources>
            <Style TargetType="ContentPresenter">
                <Style.Triggers>
                    <Trigger Property="ContentSource" Value="Icon">
                        <Setter Property="ContentTemplate">
                            <Setter.Value>
                                <DataTemplate>
                                    <Image Source="{Binding}"/>
                                </DataTemplate>
                            </Setter.Value>
                        </Setter>
                    </Trigger>
                </Style.Triggers>                   
            </Style>    
        </Style.Resources>
    </Style>

2 个答案:

答案 0 :(得分:1)

您可以尝试以下操作:

 <Style TargetType="MenuItem" BasedOn="{StaticResource {x:Type MenuItem}}" x:Shared="False">
<Style.Triggers>
  <Trigger Property="IsMouseOver" Value="True">
    <Setter Property="FontWeight" Value="Bold" />
  </Trigger>
</Style.Triggers>

让我知道它是否适合你:)

此致

答案 1 :(得分:0)

要回答您的其他问题,要更改悬停背景,请使用以下内容:

<Style TargetType="MenuItem" BasedOn="{StaticResource {x:Type MenuItem}}" x:Shared="False">
<Style.Triggers>
  <Trigger Property="IsMouseOver" Value="True">
    <Setter Property="BorderBrush" Value="Red" />
  </Trigger>
</Style.Triggers>