我想讓一個矩形(或用戶控件)繞過它在網格中給出的邊界。允許網格項目在網格上重疊?
我已經構建了一個3X3物品的網格。這些項目(當盤旋時)應該通過將它們乘以2來擴大它們的大小。然而,由於這些項目已經被給予特定的邊界(因爲它們實際上是列和行的成員),所以它們不會與這些邊界重疊。
我該怎麼做?
我想讓一個矩形(或用戶控件)繞過它在網格中給出的邊界。允許網格項目在網格上重疊?
我已經構建了一個3X3物品的網格。這些項目(當盤旋時)應該通過將它們乘以2來擴大它們的大小。然而,由於這些項目已經被給予特定的邊界(因爲它們實際上是列和行的成員),所以它們不會與這些邊界重疊。
我該怎麼做?
在這種情況下使用網格不是最好的選擇,可以考慮使用畫布或可能包裝面板。由於WPF layout system的工作方式(排列/測量),元素通常不會跨越其邊界。
或者,在您的元素的RenderTransform
屬性上使用ScaleTransform
也可以做到這一點。查看this article瞭解更多關於轉換的信息。
可能您正試圖裝飾選定的項目(或鼠標懸停的項目)。你可以考慮寫作風格(使用觸發器)或裝飾者。
更新:從 '巴斯' 以指針,我只是嘗試這樣做:
<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>
這工作非常正常。