我试图在网格中给出的边界上创建一个Rectangle(或者UserControl)。
我构建了一个包含3X3项目的网格。这些项目(当悬停在上面时)应该通过将它乘以2来扩展它们的大小。但是,由于这些项目已经被赋予特定的边界(因为它们实际上是列和行的成员),它们不会与这些边界重叠。
我该怎么做?
答案 0 :(得分:1)
在这种情况下使用网格不是最佳选择,请考虑使用画布或可能是包装面板。由于WPF layout system的工作方式(排列/测量),元素通常不会越过它们的边界。
或者,在元素'ScaleTransform
属性上使用RenderTransform
也可以。查看this article以获取有关转换的更多信息。
答案 1 :(得分:0)
可能您正在尝试装饰所选项目(或鼠标悬停的项目)。您可以考虑写作风格(使用触发器)或装饰。
更新:从'Bas'取指针,我试过这个:
<Button Content="ABC">
<Button.Style>
<Style TargetType="{x:Type Button}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="LayoutTransform" >
<Setter.Value>
<ScaleTransform ScaleX="2" ScaleY="2" />
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
这很好用。