如何解决如何在WPF中实现虚线或虚线边框?
| 我有一个ѭ0,我要向其应用and1,我想在虚线the 2的底部放一条虚线。 我如何在WPF中做到这一点?我只能看到纯色画笔。解决方法
这在我们的应用程序中效果很好,允许我们使用真实的Border而不用与Rectangles混在一起:
<Border BorderThickness=\"1,1,1\">
<Border.BorderBrush>
<DrawingBrush Viewport=\"0,8,8\" ViewportUnits=\"Absolute\" TileMode=\"Tile\">
<DrawingBrush.Drawing>
<DrawingGroup>
<GeometryDrawing Brush=\"Black\">
<GeometryDrawing.Geometry>
<GeometryGroup>
<RectangleGeometry Rect=\"0,50,50\" />
<RectangleGeometry Rect=\"50,50\" />
</GeometryGroup>
</GeometryDrawing.Geometry>
</GeometryDrawing>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</Border.BorderBrush>
<TextBlock Text=\"Content Goes Here!\" Margin=\"5\"/>
</Border>
请注意,视口将确定行中破折号的大小。在这种情况下,它将生成八个像素的虚线。视口= \“ 0,4,4 \”将为您提供四个像素的虚线。
, 您可以使用矩形来创建点划线或虚线,如下面的代码所示
<Rectangle Stroke=\"#FF000000\" Height=\"1\" StrokeThickness=\"1\" StrokeDashArray=\"4 4\"
SnapsToDevicePixels=\"True\"/>
开始使用,并根据情况自定义列表视图
, 参加聚会有点晚,但是以下解决方案对我有用。它比其他两种解决方案都更简单/更好:
<Border BorderThickness=\"1\">
<Border.BorderBrush>
<VisualBrush>
<VisualBrush.Visual>
<Rectangle StrokeDashArray=\"4 2\" Stroke=\"Gray\" StrokeThickness=\"1\"
Width=\"{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}},Path=ActualWidth}\"
Height=\"{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}},Path=ActualHeight}\"/>
</VisualBrush.Visual>
</VisualBrush>
</Border.BorderBrush>
<TextBlock Text=\"Whatever\" />
</Border>
, Xaml
<Grid>
<Grid.RowDefinitions><RowDefinition Height=\"auto\"/></Grid.RowDefinitions>
<Grid.ColumnDefinitions><ColumnDefinition Width=\"auto\"/></Grid.ColumnDefinitions>
<Rectangle RadiusX=\"9\" RadiusY=\"9\" Fill=\"White\" Stroke=\"Black\" StrokeDashArray=\"1,2\"/>
<TextBlock Padding = \"4,2\" Text=\"Whatever\"/>
</Grid>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。