Stroke.StylusPoints Property

 

Returns the stylus points of the Stroke.

Namespace:   System.Windows.Ink
Assembly:  PresentationCore (in PresentationCore.dll)

public StylusPointCollection StylusPoints { get; set; }

Property Value

Type: System.Windows.Input.StylusPointCollection

The StylusPointCollection that contains the stylus points that represent the current Stroke.

To get the stylus points that are used when the FitToCurve property on the DrawingAttributes property is set to true, use the GetBezierStylusPoints method.

System_CAPS_noteNote

The StylusPointCollection assigned to the StylusPoints property must have at least one StylusPoint in it. If you try to assign an empty StylusPointCollection to StylusPoints, or remove all the StylusPoint objects from StylusPoints, an exception occurs.

The following example is part of an overridden Stroke that draws a circle at each StylusPoint. If the FitToCurve property is set to true, the GetBezierStylusPoints is used to get the stylus points. Otherwise, the StylusPoints property is used.

protected override void DrawCore(DrawingContext context, DrawingAttributes overrides)
{
    // Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Geometry geometry = GetGeometry(overrides);
    context.DrawGeometry(new SolidColorBrush(overrides.Color), null, geometry);

    StylusPointCollection points;

    // Get the stylus points used to draw the stroke.  The points used depends on
    // the value of FitToCurve.
    if (this.DrawingAttributes.FitToCurve)
    {
        points = this.GetBezierStylusPoints();
    }
    else
    {
        points = this.StylusPoints;
    }

    // Draw a circle at each stylus point.
    foreach (StylusPoint p in points)
    {
        context.DrawEllipse(null, new Pen(Brushes.Black, 1), (Point)p, 5, 5);
    }

}

.NET Framework
Available since 3.0
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show: