Win10系列:C#应用控件进阶8
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 简单直线的效果图
Win10系列:C#应用控件进阶8的更多相关文章
- Win10系列:JavaScript 控件的使用
向页面中添加的控件可分为两种类型:标准的HTML控件和WinJS库控件.其中标准的HTML控件是指HTML标准中定义的基本控件,如按钮和复选框:WinJS库控件是为开发基于JavaScript 的Wi ...
- WPF 模仿 UltraEdit 文件查看器系列一 用户控件
WPF 模仿 UltraEdit 文件查看器系列一 用户控件 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-10 章节: 起步 添加用户控件 ...
- C#控件系列--文本类控件
C#控件系列--文本类控件 文本类控件主要包含Label.LinkLabel.Button.TextBox以及RichTextBox. Label 功能 Label用来 ...
- WPF从我炫系列4---装饰控件的用法
这一节的讲解中,我将为大家介绍WPF装饰控件的用法,主要为大家讲解一下几个控件的用法. ScrollViewer滚动条控件 Border边框控件 ViewBox自由缩放控件 1. ScrollView ...
- WPF编游戏系列 之四 用户控件
原文:WPF编游戏系列 之四 用户控件 在上一篇<WPF编游戏系列 之三 物品清单>中,对物品清单进行了演示,其中反复用到了同一组控件(如下图),而且 颜昌钢也指出在3.2. ...
- 【转】PyQt5系列教程(七)控件
PyQt5系列教程(七)控件 软硬件环境 Windows 10 Python 3.4.2 PyQt 5.5.1 PyCharm 5.0.4 前言 控件是PyQt应用程序的基石.PyQt5自带很多不 ...
- Win10系列:C#应用控件进阶10
EllipseGeometry EllipseGeometry控件可以用于绘制椭圆,通过定义EllipseGeometry控件的Center属性确定椭圆的圆心坐标,使用此控件的RadiusX 和Rad ...
- Win10系列:C#应用控件进阶9
RectangleGeometry 在使用RectangleGeometry控件绘制矩形时,矩形的位置和尺寸由Rect属性定义,该属性指定矩形的相对位置.高度和宽度.Rect有四个参数,前两个参数表示 ...
- Win10系列:C#应用控件进阶7
PathGeometry 前面介绍了Path的使用方法,接下来介绍PathGeometry类.PathGeometry提供了描绘由弧线.曲线和直线组成的多个复杂图形的方法.PathGeometry的核 ...
随机推荐
- 封装一个通用的正则,不再为test和replace所烦恼,eval很棒~
- vml--基础
VML VML是The Vector Markup Language(矢量可标记语言)的缩写.官网:https://www.vml.com/ ex: <!DOCTYPE html> < ...
- 单元测试系列之八:Sonar 数据库表关系整理一(续)
更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:Sonar平台是目前较为流行的静态代码扫描平台,为了便于使用以及自己二次开发,有必要对它的数据库结构进行学习 ...
- [亲测有效] - Linux安装PostgreSQL
本文章来为各位介绍一篇关于postgresql 9.4 在linux环境的安装步骤详解,希望文章能够对各位新手朋友带来帮助的哦. 环境说明系统:centos 6.4 64位软件:postgresq ...
- jquery.validator 手机号验证
1.在input中加上mobile="true",maxlength="11" <label class="w170 control-label ...
- Jquery中 .empty()和.append()
jQuery empty() 方法:移除所选<div> 元素的内容: .empty()实例 jQuery append() 方法:在所选<> 元素结尾插入内容: .append ...
- easyUI combobox使用方法总结
combobox,中文叫复合框,是把文本框和列表框的特性结合起来的一种控件,这个控件,既可以输入文字,也可以像列表框一样选择选项 Combobox用法和方法参数: 1. 需要引入class=" ...
- WEB API系列(一):WEB API的适用场景、第一个实例
在我前一篇博客中已经给各位简单介绍了HTTP协议与RestFul API的关系,以及一些基本的HTTP协议知识,在这些知识的铺垫下,今天,我们一起来讨论一下WEB API的适用场景,然后写我们第一个W ...
- jquery延迟加载(懒加载)插件
Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预 ...
- OpenVPN部署,实现访问云服务器的内网
本教程不描述如何FQ 一.OpenVPN服务端部署 $ yum -y install net-tools lzo lzo-devel openssl-devel pam-devel gcc gcc-c ...