Silverlight中關於編碼方面的應用是一個應用重點。只有熟練的使用各種方法來進行合理的編寫程式碼,才能真正的實現我們所需的圖形介面的需求。在Silverlight提供的諸多形狀物件中,Line物件無疑是最簡單的一個,源自於此,大家很容易忽略掉Line物件的一些特色功能。例如下面提到的兩個應用技巧。
1、Silverlight資源檔案引用相關難題解析
2、ilverlight 2資料驗證功能實作方法介紹
3、企業級Silverlight應用要點分析
4、Silverlight資料非同步通訊實際操作方法介
5、深入解讀Silverlight鍵盤路由事件代碼顯示
定義Silverlight Line物件起點與終點的外觀
預設值下,Line物件繪製的線條的起點和終點都是沒有樣式的,但可以透過StrokeStartLineCap、StrokeEndLineCap、StrokeDashCap屬性為直線物件額外增加線帽樣式。其中前兩個屬性主要用於實線對象,其取值型別為PenLineCap 列舉(PenLineCap 枚舉的值範圍請參考下表)。
所謂線帽是在直線的原有長度外,額外增加的圖形
Silverlight Line物件成員名稱及說明
Flat 一個未超出直線上最後一點的線帽。等同於無線帽。
Square 一個高度等於直線粗細、長度等於直線粗細一半的長方形。
Round 一個直徑等於直線粗細的半圓形。
Triangle 一個底邊長度等於直線粗細的等腰直角三角形。
下面的範例顯示的就是設定不同的StrokeStartLineCap、StrokeEndLineCap屬性值的Xmal程式碼跟顯示效果:
< Line Grid.Row="0" X1="80" Y1="30" X2="330" Y2="30" Stroke="Red" StrokeThickness="10" StrokeEndLineCap= "Triangle"> < /Line> < Line Grid.Row="0" X1="80" Y1="80" X2="330" Y2="80" Stroke="Blue" StrokeThickness="10" StrokeEndLineCap= "Triangle" StrokeStartLineCap="Round"> < /Line>
透過Silverlight Line物件繪製虛線效果,需要用到StrokeDashArrayray,此屬性對應一個Double類型的集合。此集合的奇數位表示線段的長度,偶數位表示兩個線段之間的間隔長度。如果只是表示普通的虛線,只需定義一個數值就可以了,預設會將該數值作為線段跟間隔的長度。例如,下面的Xaml程式碼就表示等一條等間距的虛線。
< Line Grid.Row="1" X1="80" Y1="30" X2="330" Y2="30" StrokeDashArray="4" Stroke="Blue" StrokeThickness="2" StrokeStartLineCap="Round"> < /Line>
如果想表示一些特殊類型的虛線,那麼就需要為StrokeDashArray屬性設定多個數值了。
其Xaml程式碼如下:
< Line Grid.Row="1" X1="80" Y1="60" X2="330" Y2="60" StrokeDashArray= "4 2 1 2" Stroke="Blue" StrokeThickness= "2" StrokeStartLineCap="Round"> < /Line>
在Silverlight Line物件應用StrokeDashArray屬性時需要注意的是,其設定的數值並不是線段以及間隔的實際像素值,而是相對於StrokeThickness的倍數。