假设我们有一个带有TextBlock的网格。现在,如果我执行一些RenderTransform,使TextBlock出现在网格之外,TextBlock仍然可见。我的问题很简单:如何自动隐藏网格外部的TextBlock部分? (换句话说,如何使网格像其孩子的视觉界限一样?)
答案 0 :(得分:11)
您可以使用与父元素的边界匹配的剪贴蒙版:
<Border Height="200" Width="200" BorderThickness="1" BorderBrush="Black" >
<Border.Clip>
<RectangleGeometry Rect="0,0,200,200"></RectangleGeometry>
</Border.Clip>
<TextBlock Text="Foo">
<TextBlock.RenderTransform>
<TranslateTransform X="180"></TranslateTransform>
</TextBlock.RenderTransform>
</TextBlock>
</Border>
在WPF中,您无需手动执行此操作,只需设置ClipToBounds="True"