WPF:On鼠标悬停在特定控件上,增加其大小并在其他控件上重叠

Sud*_*ngh 9 wpf wpf-controls

我想在用户悬停鼠标时增加控件的大小.
大小增加不应该重新调整其他控件,而是当前控件应该与相邻控件重叠,如下面所示的谷歌搜索(图像选项卡):

替代文字

带有红色边框的图像与其他图像重叠.

Fre*_*lad 12

您可以在IsMouseOver上的RenderTransform中使用ScaleTransform.如果您希望从控件中心完成缩放,则可以使用RenderTransformOrigin="0.5,0.5".此外,您可能需要在触发器中设置ZIndex以确保它显示在其他控件的顶部.使用TextBlock的示例

更新
尝试这样

<ItemsControl Margin="50">
    <ItemsControl.Resources>
        <Style x:Key="ScaleStyle" TargetType="TextBlock">
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Grid.ZIndex" Value="1"/>
                    <Setter Property="RenderTransform">
                        <Setter.Value>
                            <ScaleTransform ScaleX="1.1" ScaleY="1.1"/>
                        </Setter.Value>
                    </Setter>
                </Trigger>
            </Style.Triggers>
        </Style>
    </ItemsControl.Resources>
    <TextBlock Style="{StaticResource ScaleStyle}" RenderTransformOrigin="0.5,0.5" Text="Something.." Background="Red" Height="20"/>
    <TextBlock Style="{StaticResource ScaleStyle}" RenderTransformOrigin="0.5,0.5" Text="TextBlock2" Background="DarkBlue" Height="20"/>
    <TextBlock Style="{StaticResource ScaleStyle}" RenderTransformOrigin="0.5,0.5" Text="TextBlock3" Background="DarkBlue" Height="20" Foreground="White"/>
    <TextBlock Style="{StaticResource ScaleStyle}" RenderTransformOrigin="0.5,0.5" Text="TextBlock4" Background="DarkBlue" Height="20" Foreground="White"/>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)