<!-- Draws a diagonal line from (10,10) to (50,50). --> <Line X1="10" Y1="10" X2="50" Y2="50" Stroke="Black" StrokeThickness="4" />
<!-- Draws a diagonal line from (10,10) to (50,50) and moves it 100 pixels to the right. --> <Line X1="10" Y1="10" X2="50" Y2="50" StrokeThickness="4" Canvas.Left="100"> <Line.Stroke> <RadialGradientBrush GradientOrigin="0.5,0.5" Center="0.5,0.5" RadiusX="0.5" RadiusY="0.5"> <RadialGradientBrush.GradientStops> <GradientStop Color="Red" Offset="0" /> <GradientStop Color="Blue" Offset="0.25" /> </RadialGradientBrush.GradientStops> </RadialGradientBrush> </Line.Stroke> </Line>
<!-- Draws a horizontal line from (10,60) to (150,60). --> <Line X1="10" Y1="60" X2="150" Y2="60" Stroke="Black" StrokeThickness="4"/>
</Canvas>
尽管 Line 类提供了 Fill 属性,由于 Line 没有任何区域,所以,设置它是没有任何效果发。
<Path Stroke="DarkGoldenRod" StrokeThickness="3" Data="M 100,200 C 100,25 400,350 400,175 H 280" /> </Canvas>
下图显示了上面例子中 Path 的结果。
Data 属性字符串以“move to”命令(使用 M 标记)开始,以 Canvas 坐标系统为路径建立起始点。Path 的 Data 参数是大小写敏感的。大写的 M 表示当前点的绝对坐标。小写的 m 表示的相对坐标。第一部分是三次
Bezier curve(贝塞尔曲线),以点(100,200)开始,(400,175)结束,使用两个控制点(100,25) 和 (400,350)绘制而成。这部分使用 C 命令,再次说明,大写的 C 表示绝对路径,小写的 c 表示相对路径。
第二段以绝对的水平线“line to”命令 H 指定从前面子路径的终点(400,175)到新的终点(280,175)之间画一条线。由于它是画水平线的“line to”命令,指定的值是 x 坐标。
<!-- This polygon shape uses pre-defined color values for its Stroke and Fill properties. The SolidColorBrush's Opacity property affects the fill color in this case by making it slightly transparent (opacity of 0.4) so that it blends with any underlying color. -->