1. 程式人生 > >Win10系列:C#應用控制元件進階5

Win10系列:C#應用控制元件進階5

多線形

多線形和多邊形類似,不同點在於多線形中最後一個點和第一個點不會預設被連線。在多線形的點集中,可以存在同一個開始點和終結點因而會定義成閉合圖形。下面將演示如何使用Polyline控制元件繪製一個多線形

在一個開啟的Windows應用商店專案中新建一個空白頁,並命名為PolylinePage,雙擊開啟此頁面的PolylinePage.xaml檔案,在Grid元素中新增如下繪製多線形的程式碼。

<Polyline Stroke="Red" StrokeThickness="5" Points="70,100 10, 150 210,150 100,100"/>

上面程式碼繪製的多線形由Points集合的四個點(70,100)、(10,150)、(210,150)和(100,100)來控制形狀。接著設定Stroke和StrokeThickness屬性為紅色、5畫素,從而定義一個輪廓顏色為紅色、輪廓粗細為5畫素的多邊形。此多邊形第一個點和最後一個點不會像Polygon元素那樣由Stroke輪廓連線起來。執行效果如圖8-6所示。

前面介紹了使用前臺程式碼繪製多邊形,接下來看一下使用後臺程式碼繪製此多邊形的過程,具體實現程式碼如下所示:

public PolylinePage()

{

this.InitializeComponent();

//開始繪製多線形

Polyline polyline = new Polyline();

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

//例項化points物件

PointCollection points = new PointCollection();

//把點新增到點集合中

points.Add(new Point(70, 100));

points.Add(new Point(10, 150));

points.Add(new Point(210, 150));

points.Add(new Point(100, 100));

polyline.Points = points;

    //將多邊形放到名字為MyCanvas的控制元件中

MyCanvas.Children.Add(polyline);

}

在上面的程式碼中,首先例項化一個Polyline型別的物件polyline,設定Stroke屬性為紅色,接著定義存放點集的points物件,利用points物件的Add屬性新增四個點,把points賦值給polyline物件的Points屬性,最後呼叫MyCanvas容器物件的Children屬性中的Add方法,將這個多線形加入到頁面中顯示。

執行此頁面,多線形執行效果如圖8-6所示。

圖8-6 多線形形狀效果圖