Tutorial 6 – Utilizando o Inking Support do Silverlight com o Visual Studio 2008

1- Para construirmos nosso exemplo vamos precisar ter instalado em nosso computador o
- Microsoft Visual Studio 2008
- Microsoft Silverlight Tools Alpha for Visual Studio 2008
- E claro o plug-in Silvelight 1.1 Alpha
2- Abra o Visual Studio 2008 vá no menu File -> New -> Project -> Visual Basic -> Silverlight -> SilverLight Project e dê o nome “inksilverlight” para o projeto.

Figura: Criando um projeto Silverlight no Visual Studio 2008
3- Abra o arquivo Page.xaml e insira o seguinte código antes de </Canvas>:
<InkPresenter x:Name=”inkP” Background=”Gray” Width=”600″ Height=”400″></InkPresenter>
4- Abra o Page.xaml.vb e deixe o código como abaixo:
Partial Public Class Page
Inherits Canvas
Dim s As Stroke
Public Sub Page_Loaded(ByVal o As Object, ByVal e As EventArgs)
‘ Required to initialize variables
InitializeComponent()
End Sub
Private Sub inkP_MouseLeftButtonDown(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs) Handles inkP.MouseLeftButtonDown
‘ Start capture mouse movevement and drawing
inkP.CaptureMouse()
‘ Create stroke object
s = New Stroke
s.StylusPoints.AddStylusPoints(e.GetStylusPoints(inkP))
‘ Set stroke color to red
s.DrawingAttributes.Color = Colors.Red
‘ Set stroke width to 15
s.DrawingAttributes.Width = 15
inkP.Strokes.Add(s)
End Sub
Private Sub inkP_MouseLeftButtonUp(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs) Handles inkP.MouseLeftButtonUp
‘ Stop drawing
s = Nothing
End Sub
Private Sub inkP_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs) Handles inkP.MouseMove
‘ Drawing in mouse move
If s IsNot Nothing Then
s.StylusPoints.AddStylusPoints(e.GetStylusPoints(inkP))
End If
End Sub
End Class
5- Teste o projeto com menu Debug -> Start Without Debugging (Ctrl + F5) e veja o resultado

Figura: Testando o projeto