0

我已经使用 定义了一个六边形System.Windows.Shapes.Path,但是通过应用Stroke它 ( SolidColorBrush) 边界会向外和向内。

我怎样才能使中风只应用于我的内部Path

4

1 回答 1

0

您需要使用Clip依赖属性:想法是像这样通过它自己的几何图形来剪辑路径。

<Path ... Clip="{Binding Data, RelativeSource={RelativeSource Self}}"/>

您必须将 StrokeThickness 加倍,因为只有一半的笔划是可见的。

即使它在 silverlight 和 WPF 中运行良好,我在过去使用此代码时也遇到了一些问题(将 Clip 绑定到相关源);我通过添加另一个绑定或简单地通过在代码中分配 Clip 轻松解决了这个问题。

编辑:还要注意,对于裁剪,应该填充 pathGeometry。

裁剪区域是几何体的“外部”。换句话说,显示(未剪辑)的内容是几何图形的区域,如果几何图形用作路径数据而不是剪辑数据,则该几何图形将具有填充。裁剪区域是位于几何叠加之外的任何区域。对于复杂的几何图形,被裁剪或未被裁剪的区域受几何图形的 FillRule 影响。

于 2013-05-13T19:43:47.183 回答