gpt4 book ai didi

c# - Gridsplitter 在 MouseOver 上可见

转载 作者:太空狗 更新时间:2023-10-29 21:22:46 25 4
gpt4 key购买 nike

我希望 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>

顺便说一下,我认为如果我将 Visibility 设置为 Hidden 我就无法定位 GridSplitter,所以我切换它背景 代替。

关于c# - Gridsplitter 在 MouseOver 上可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18637399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com