若要繪製多邊形須要用到Polygon元素,並經過定義一系列的點繪製多邊形。Polygon類型的對象有Points屬性, 這個屬性用來定義組成邊的點集。在前臺代碼中,使用空格分隔各個點,而後利用逗號分隔座標點來定義點座標。沒必要爲了將起點和終點指定爲相同的值而聲明閉合點,Polygon類假設要定義閉合形狀,而且會自動將終點與起點連起來。下面將演示如何繪製一個多邊形。 this
在一個打開的Windows應用商店項目中新建一個空白頁,並命名爲PolygonPage,雙擊打開此頁面的PolygonPage.xaml文件,在Grid元素中添加以下代碼。 spa
<Polygon Fill="Red" Points="70,100 10,200 210,200 100,100" /> 對象
上面的代碼使用Polygon控件的Points屬性設置多邊形的4個頂點座標分別爲 (70,100)、(10,200)、(210,200)和(100,100),接着使用Red給Fill屬性賦值,從而繪製一個填充顏色爲紅色的多邊形。沒有對Stroke屬性賦值,以便它沒有外圍輪廓。 blog
接下來介紹使用後臺代碼繪製多邊形。與前臺代碼不同的是,後臺代碼須要使用 PointCollection類型的對象存放各個點,接着將每一個點做爲一個Point對象添加到集合中,而後把集合對象的值賦值給Points屬性,這樣即可以繪製與前臺同樣的多邊形。代碼以下所示: it
public PolygonPage() io
{ 容器
this.InitializeComponent(); 後臺
Polygon polygon = new Polygon(); 方法
polygon.Fill = new SolidColorBrush(Colors.Red); im
//實例化一個pointCollenction的對象
PointCollection points = new PointCollection();
//添加點
points.Add(new Point(70, 100));
points.Add(new Point(10, 200));
points.Add(new Point(210, 200));
points.Add(new Point(100, 100));
//設置polygon的點
polygon.Points = points;
MyCanvas.Children.Add(polygon);
}
在上面的代碼中,首先實例化一個Polygon類型的對象polygon,設定Stroke屬性爲紅色,接着定義存放點集的PointCollection類型的points對象,利用points對象的Add屬性添加四個點,而後把points賦值給polygon對象的Points屬性,這樣即可以繪製一個與前臺方式實現效果一致的多邊形,最後調用MyCanvas容器對象的Children屬性中的Add方法,將這個多邊形加入到頁面中顯示。
運行此頁面,繪製多邊形的效果如圖8-5所示。
圖8-5 簡單的多邊形