WPF中画虚线

本文介绍WPF中Line元素的多种属性配置,包括如何使用StrokeDashArray属性设置虚线样式,StrokeDashCap属性调整虚线端点样式,以及StrokeStartLineCap和StrokeEndLineCap属性设置起始和结束点的样式。

在WPF中,画线的方法十分简单,只要声明一个Line然后添加到指定的位置就可以了,但Line并不仅仅只能画一条直线,还可以对直线进行修饰。

1.Line.StrokeDashArray属性

StrokeDashArray是一个双精度字符串,指示用于勾勒形状轮廓的虚线和间距的样式。

2.Line.StrokeDashCap属性

获取或设置一个 PenLineCap 枚举值,该值指定如何绘制虚线的两端。

3.Line.StrokeEndLineCap和Line.StrokeStartLineCap属性

用于设置起点和终点的样式,也是一个 PenLineCap 枚举值
PenLineCap 枚举值,包括Flat,Square,Round,Triangle,效果如下图
这里写图片描述

        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            Line l = new Line();
            l.X1 = 10;
            l.X2 = 450;
            l.Y1 = 15;
            l.Y2 = 15;
            l.Stroke = Brushes.Coral;
            l.StrokeThickness = 20;
            l.StrokeDashArray = new DoubleCollection() {2,3};
            l.StrokeDashCap = PenLineCap.Triangle;
            l.StrokeEndLineCap = PenLineCap.Square;
            l.StrokeStartLineCap = PenLineCap.Round;
            Canvas1.Children.Add(l);
        }

效果如下
这里写图片描述.

WPF中绘制虚线,可按以下步骤实现。首先创建一个`Line`对象,接着设置它的起点和终点坐标,再设置笔触,最后根据需要设置虚线样式并将其添加到`Canvas`中。 以下是示例代码: ```csharp Line l = new Line(); l.X1 = x1; l.X2 = x2; l.Y1 = y1; l.Y2 = y2; l.Stroke = brush; if (0 != dash) { l.StrokeDashArray = new DoubleCollection { dash, dash2 }; } mCanvas.Children.Add(l); ``` 在上述代码中,`x1`、`y1`是直线起点的横、纵坐标,`x2`、`y2`是直线终点的横、纵坐标,`brush`是用于设置直线笔触的刷对象,`dash`和`dash2`用于控制虚线样式。 另外,也可以参考以下示例,它详细展示了设置起点和终点样式以及更多属性的情况: ```csharp private void Window_Loaded(object sender, RoutedEventArgs e) { Line l = new Line(); l.X1 = 10; l.X2 = 450; l.Y1 = 15; l.Y2 = 15; l.Stroke = Brushes.Coral; l.StrokeThickness = 20; l.StrokeDashArray = new DoubleCollection() {2,3}; l.StrokeDashCap = PenLineCap.Triangle; l.StrokeEndLineCap = PenLineCap.Square; l.StrokeStartLineCap = PenLineCap.Round; Canvas1.Children.Add(l); } ``` 此代码中,除了设置直线的基本属性外,还设置了笔触粗细、虚线样式、虚线端点样式、线段终点样式和线段起点样式等。其中,`StrokeDashArray`用于设置虚线样式,`StrokeDashCap`、`StrokeEndLineCap`和`StrokeStartLineCap`分别用于设置虚线端点、线段终点和线段起点的样式,它们的值为`PenLineCap`枚举值,包括`Flat`、`Square`、`Round`、`Triangle`等 [^1][^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值