C# 鼠标上方的Gridsplitter可见

C# 鼠标上方的Gridsplitter可见,c#,wpf,gridsplitter,C#,Wpf,Gridsplitter,我想要一个GridSplitter只有当用户将鼠标放在它上面时才可见。为此,我在其样式中设置了一个DataTrigger。但我不知道这是怎么回事,因为我没有得到想要的行为。它只是保持不变 <GridSplitter ResizeDirection="Columns" ResizeBehavior="BasedOnAlignment" Grid.Column="1"

我想要一个
GridSplitter
只有当用户将鼠标放在它上面时才可见。为此,我在其样式中设置了一个
DataTrigger
。但我不知道这是怎么回事,因为我没有得到想要的行为。它只是保持不变

                <GridSplitter
            ResizeDirection="Columns"
            ResizeBehavior="BasedOnAlignment"
            Grid.Column="1"
            Grid.Row="0"
            Grid.RowSpan="2"
            Width="8"
            Height="Auto"
            HorizontalAlignment="Left"
            VerticalAlignment="Stretch" 
                Background="AliceBlue"
            Margin="-3 0 0 0">
                <GridSplitter.Style>
                    <Style TargetType="{x:Type GridSplitter}">
                        <Setter Property="Visibility" Value="Hidden"/>
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding IsMouseOver}">
                                <Setter Property="Visibility" Value="Visible"/>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </GridSplitter.Style>
            </GridSplitter>


你觉得有什么不对劲吗?
GridSplitter
是否必须以不同的方式设置样式

我明白了,必须使用触发器而不是数据触发器:

<GridSplitter.Style>
    <Style TargetType="{x:Type GridSplitter}">
        <Setter Property="Background" Value="Transparent"/>
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter Property="Background" Value="AliceBlue"/>
            </Trigger>
        </Style.Triggers>
    </Style>
</GridSplitter.Style>

顺便说一句,我认为如果我将
可见性设置为
隐藏
,我就不能将
网格拆分器设置为目标,因此我会切换其
背景