我有一个正在应用Style
的ListViewItem
,我想把一条灰色虚线作为底部的Border
。
我如何在WPF中做到这一点?我只能看到纯色画笔。
发布于 2013-07-03 01:00:20
这在我们的应用程序中工作得很好,允许我们使用真正的边框,而不是摆弄矩形:
<Border BorderThickness="1,0,1,1">
<Border.BorderBrush>
<DrawingBrush Viewport="0,0,8,8" ViewportUnits="Absolute" TileMode="Tile">
<DrawingBrush.Drawing>
<DrawingGroup>
<GeometryDrawing Brush="Black">
<GeometryDrawing.Geometry>
<GeometryGroup>
<RectangleGeometry Rect="0,0,50,50" />
<RectangleGeometry Rect="50,50,50,50" />
</GeometryGroup>
</GeometryDrawing.Geometry>
</GeometryDrawing>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</Border.BorderBrush>
<TextBlock Text="Content Goes Here!" Margin="5"/>
</Border>
请注意,视口确定线中虚线的大小。在这种情况下,它会生成8个像素的破折号。Viewport="0,0,4,4“会给你四个像素的破折号。
发布于 2011-06-01 12:12:15
您可以使用矩形创建虚线或虚线,如以下代码所示
<Rectangle Stroke="#FF000000" Height="1" StrokeThickness="1" StrokeDashArray="4 4"
SnapsToDevicePixels="True"/>
开始使用它,并根据您的场景自定义列表视图
发布于 2017-11-15 13:40:16
参加聚会有点晚了,但下面的解决方案对我很有效。它比其他两种解决方案都稍微简单/更好:
<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>
https://stackoverflow.com/questions/6195395
复制相似问题