Stroke.StylusPoints 属性

定义

返回 Stroke 的触笔接触点。

public:
 property System::Windows::Input::StylusPointCollection ^ StylusPoints { System::Windows::Input::StylusPointCollection ^ get(); void set(System::Windows::Input::StylusPointCollection ^ value); };
public System.Windows.Input.StylusPointCollection StylusPoints { get; set; }
member this.StylusPoints : System.Windows.Input.StylusPointCollection with get, set
Public Property StylusPoints As StylusPointCollection

属性值

StylusPointCollection

包含表示当前 StylusPointCollection 的触笔接触点的 Stroke

示例

下面的示例是重写 Stroke 的一部分,它在每个 StylusPoint位置绘制一个圆。 如果属性 FitToCurve 设置为 trueGetBezierStylusPoints 则用于获取触笔点。 否则,将使用该 StylusPoints 属性。

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);
    }
}
Protected Overrides Sub DrawCore(ByVal context As DrawingContext, _
        ByVal overridedAttributes As DrawingAttributes)

    ' Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Dim geometry As Geometry = GetGeometry(overridedAttributes)
    context.DrawGeometry(New SolidColorBrush(overridedAttributes.Color), Nothing, geometry)

    Dim points As StylusPointCollection

    ' Get the stylus points used to draw the stroke.  The points used depends on
    ' the value of FitToCurve.
    If Me.DrawingAttributes.FitToCurve Then
        points = Me.GetBezierStylusPoints()
    Else
        points = Me.StylusPoints
    End If

    ' Draw a circle at each stylus point.
    Dim p As StylusPoint
    For Each p In points
        context.DrawEllipse(Nothing, New Pen(Brushes.Black, 1), CType(p, Point), 5, 5)
    Next p

End Sub

注解

若要获取属性上属性设置为true时使用的FitToCurve触笔点,请使用该方法GetBezierStylusPointsDrawingAttributes

备注

StylusPointCollection分配给该StylusPoints属性的属性必须至少有一个StylusPoint。 如果尝试将空StylusPointCollection分配给StylusPoints或从StylusPoints中删除所有StylusPoint对象,则会发生异常。

适用于