Stroke Object
Represents a collection of points that correspond to a stylus-down, move, and stylus-up sequence.
XAML |
<Stroke .../>
|
Scripting |
To create an object using scripting, see CreateFromXAML.
|
Properties
DrawingAttributes, Name, StylusPoints
Methods
Equals, FindName, GetBounds, GetHost, GetValue, HitTest, SetValue
Remarks
The Stroke object is not related to the Stroke property which is a member of the Shape class.
Examples
JavaScript |
---|
var agCtrl; var inkPresenter; // Corresponds to InkPresenter element in xaml var newStroke = null; // The Stroke variable we'll use here in mouse handlers // DrawingAttributes variables var daWidth = 2; var daHeight = 2; var daColor = "Black"; var daOutlineColor = "Black"; function root_Loaded(sender, args) { // Get the html object which contains the Silverlight plug-in agCtrl = sender.GetHost(); inkPresenter = sender.findname("inkPresenterElement"); } // Capture mouse movement when the left button is pressed and create the stroke function InkPresenterMouseDown(sender,args) { inkPresenter.CaptureMouse(); newStroke = agCtrl.content.createFromXaml('<Stroke/>'); var da = agCtrl.content.CreateFromXaml('<DrawingAttributes/>'); newStroke.DrawingAttributes = da; // Set the drawing attributes properties newStroke.DrawingAttributes.Width = daWidth; newStroke.DrawingAttributes.Height = daHeight; newStroke.DrawingAttributes.Color = daColor; newStroke.DrawingAttributes.OutlineColor = daOutlineColor; newStroke.StylusPoints.AddStylusPoints(args.GetStylusPoints(inkPresenter)); inkPresenter.Strokes.Add(newStroke); } // Add the new points to the Stroke we're working with function InkPresenterMouseMove(sender,args) { if (newStroke != null) { newStroke.StylusPoints.AddStylusPoints(args.GetStylusPoints(inkPresenter)); } } // Release the mouse function InkPresenterMouseUp(sender,args) { newStroke = null; inkPresenter.ReleaseMouseCapture(); } |
See Also
Ink Support in Microsoft Silverlight
StrokeCollection
InkPresenter