Silverlight的Ink機制
Silverlight一直以來就有所謂的Ink手寫功能,過去我很少提到這部分,最近有一位讀者問到操作的方式,因此一併在BLOG上介紹。 InkPresenter控制項是筆墨的關鍵,你可以透過InkPresenter的Strokes集合屬性,把一個或多個Stroke物件加入Strokes集合中,而Stroke物件的StylusPoints屬性所表達的就是一群連續的點,用來在畫面上呈現出各種線條。 而透過滑鼠的MouseMove事件,我們可以很輕易的取得滑鼠經過的每一個點,例如: private void InkCanvas_MouseMove(object sender, System.Windows.Input.MouseEventArgs e) { //將每一點加入NewStroke NewStroke.StylusPoints.Add(e.StylusDevice.GetStylusPoints(InkPresenter1)); } 如此一來,我們就可以輕易的建立出可以手寫繪製的畫板了。 [ 測試範例 ] [ 完整範例程式碼下載 ] 當然,Ink機制也可以跟Multi-Touch配合,關於這部分在下一期的Run!PC當中會配合Multi-Touch一併介紹與說明,有興趣的讀者可以參考Run!PC 11月號。