The UIElement.Clip http://msdn.microsoft.com/en-us/library/system.windows.uielement.clip.aspx属性需要一个Geometry http://msdn.microsoft.com/en-us/library/system.windows.media.geometry.aspx对象并用它来剪掉对象的外部UIElement
。我想做几何逆运算并在元素上打一个孔。
有人知道怎么做吗?
我想创建一个倒置版本的剪辑几何体会起作用,但我找不到方法来做到这一点。
EDIT看来WPF有Geometry.Combine http://msdn.microsoft.com/en-us/library/ms607449.aspx它可用于从一个几何体中减去另一个几何体,尽管这在 Silverlight 中不可用。如果是的话,我可以从元素边界矩形的矩形中减去剪辑几何图形,然后用它来剪辑。
Silverlight 中的一种方法是使用GeometryGroup
并在组中包括一个从远处的负位置开始的非常大的矩形。
例如,下面的蓝色方块有较小的方孔:-
<Rectangle Fill="Blue" HorizontalAlignment="Center" VerticalAlignment="Center" Height="200" Width="200">
<Rectangle.Clip>
<GeometryGroup>
<RectangleGeometry Rect="-2048 -2048 4096 4096" />
<RectangleGeometry Rect="100 100 50 50" />
</GeometryGroup>
</Rectangle.Clip>
</Rectangle>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)