随笔 - 705  文章 - 0  评论 - 1103  阅读 - 138万 

LineGeometry

LineGeometry控件通过指定直线的起点和终点来定义线。LineGeometry对象无法进行自我绘制,因此同样需要使用 Path元素来辅助呈现。LineGeometry与Line对象很相似,它们都没有内部面积,不过两者在用法上有些区别,通过定义LineGeometry的StartPoint与EndPoint属性来确定线的起点与终点。下面将演示如何使用LineGeometry绘制一个线形。

下面利用LineGeometry控件绘制一个起点为(300,300)终点为(400,400)的线。在一个打开的Windows应用商店项目中新建一个空白页,并命名为LineGeometryPage,双击打开此页面的LineGeometryPage.xaml文件,在Grid元素中添加如下代码。

<Path Stroke="Red" StrokeThickness="1">

<Path.Data>

<LineGeometry StartPoint="300,300" EndPoint="400,400"/>

</Path.Data>

</Path>

上面的代码首先定义Path并对Stroke和StrokeThickness属性赋值为红色(Red)、1像素,Path元素本身有一个与之关联的画刷,这是通过Path辅助LineGeometry呈现的原因。然后通过定义LineGeometry控件的StartPoint和EndPoint属性来确定线形几何的起点与终点。

前面介绍了在前台绘制线形几何图形,下面我们来看一下使用后台代码绘制此图形,代码如下所示:

public LineGeometryPage()

{

this.InitializeComponent();

//实例化Path对象

Windows.UI.Xaml.Shapes.Path mypath = new Windows.UI.Xaml.Shapes.Path();

mypath.StrokeThickness = 1;

//定义线的颜色

mypath.Stroke = new SolidColorBrush(Colors.Red);

LineGeometry line = new LineGeometry();

//设置起始点

line.StartPoint = new Point(300, 300);

//设置终点

line.EndPoint = new Point(400, 400);

//line 对象的值赋值给Data

mypath.Data = line;

MyShow.Children.Add(mypath);

}

在上面的代码中,首先实例化Path类型的对象mypath,并设置mypath对象的StrokeThickness 属性值为1、Stroke为红色(Red)。然后定义LineGeometry类型的对象line,并设置line对象的StartPoint和EndPoint属性为(300,300)、(400,400)。接着将line对象赋值给mypath对象的Data属性,最后调用MyShow容器对象的Children属性中的Add方法,将这个矩形加入到页面中显示。

运行此页面,简单直线的运行效果如图8-9所示。

图8-9 简单直线的效果图

posted on   冯瑞涛  阅读(319)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
历史上的今天:
2011-03-30 Android 常用布局 Layout 和 组件编写
2009-03-30 WCF 一步一步从入门到精通(一)建立一个简单入门的例子(适合一点不会的朋友阅读)
点击右上角即可分享
微信分享提示