WPF扩展器标头鼠标悬停颜色更改

时间:2012-06-30 05:35:17

标签: wpf header mouseover expander

我有wpf Expander控件,当我将鼠标悬停在它上面时,我想要更改Header的背景颜色。 这是我的控制:

<Expander Margin="0" ExpandDirection="Right">
    <Expander.Header>
        <StackPanel Orientation="Horizontal" VerticalAlignment="Top">
            <Image Source="placeholder_imageObject.png"  Stretch="Uniform" Margin="6,0,0,0" Width="36" Height="36" VerticalAlignment="Center"/>
            <ContentPresenter Content="Image" VerticalAlignment="Center" Margin="5,0,0,0"/>
            <Path Data="{StaticResource RightArrowGeometry}" Fill="Black"  Margin="14,0,0,0" VerticalAlignment="Center">
            </Path>
        </StackPanel>
    </Expander.Header>
    <Grid Margin="10,0,0,0" Background="White">
        <controls:SymbolController x:Name="dgSymbolControl">
        </controls:SymbolController>
    </Grid>
</Expander>

请帮助 谢谢 西

1 个答案:

答案 0 :(得分:1)

你可以在你的“Expander.Header”中为你的StackPanel提供一个带触发器的样式:

 <Style x:Key="MyCustomStackPanelStyle" TargetType="{x:Type StackPanel}">
      <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
          <Setter Property="Background" Value="Red" />
        </Trigger>
        <Trigger Property="IsMouseOver" Value="False">
          <Setter Property="Background" Value="Transparent" />
        </Trigger>
      </Style.Triggers>
    </Style>