Freigeben über


InkAnalyzer.AddStroke-Methode (Stroke)

Fügt dem InkAnalyzer einen Stroke hinzu und weist dem Strich den Gebietsschemabezeichner des aktiven Eingabethreads zu.

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

Syntax

'Declaration
Public Function AddStroke ( _
    strokeToAdd As Stroke _
) As ContextNode
'Usage
Dim instance As InkAnalyzer
Dim strokeToAdd As Stroke
Dim returnValue As ContextNode

returnValue = instance.AddStroke(strokeToAdd)
public ContextNode AddStroke(
    Stroke strokeToAdd
)
public:
ContextNode^ AddStroke(
    Stroke^ strokeToAdd
)
public ContextNode AddStroke(
    Stroke strokeToAdd
)
public function AddStroke(
    strokeToAdd : Stroke
) : ContextNode

Parameter

Rückgabewert

Typ: System.Windows.Ink.ContextNode
Der ContextNode, dem strokeToAdd hinzugefügt wurde.

Hinweise

Der InkAnalyzer fügt die Stroke einem UnclassifiedInkNode in der SubNodes-Auflistung der RootNode-Eigenschaft hinzu. Stroke, strokeToAdd wird derselbe Gebietsschemabezeichner zugewiesen, der auch für den aktiven Eingabethread verwendet wird: Stroke wird dann dem ersten UnclassifiedInkNode hinzugefügt, der die Striche mit demselben Gebietsschemabezeichner enthält. Wenn kein solcher UnclassifiedInkNode vorhanden ist, wird ein neuer UnclassifiedInkNode erstellt, und strokeToAdd wird dem neuen UnclassifiedInkNode hinzugefügt.

Diese Methode erweitert die DirtyRegion auf die Gesamtmenge des aktuellen Werts des Bereichs und des umgebenden Rechtecks für den hinzugefügten Strich.

Wenn der Strich bereits an InkAnalyzer angefügt ist, löst der InkAnalyzer eine Ausnahme aus.

Beispiele

Im folgenden Beispiel wird ein neuer InkAnalyzer erstellt, und an die Strokes-Eigenschaft für den InkCanvas mit dem Namen theInkCanvas wird der StrokesChanged-Ereignishandler angefügt.

theInkAnalyzer = New InkAnalyzer()

AddHandler theInkCanvas.Strokes.StrokesChanged, AddressOf Strokes_StrokesChanged
theInkAnalyzer = new InkAnalyzer();

theInkCanvas.Strokes.StrokesChanged += 
    new StrokeCollectionChangedEventHandler(Strokes_StrokesChanged);

Im folgenden Beispiel wird der Strokes_StrokesChanged-Ereignishandler definiert, der Striche zu theInkAnalyzer hinzufügt, wenn sie bereits zu theInkCanvas. hinzugefügt wurden. Außerdem entfernt der Ereignishandler Striche aus theInkAnalyzer,, wenn sie bereits aus theInkCanvas entfernt wurden.

' This event occurs whenever a stroke is added, removed, or partially erased
' from the InkCanvas.
Sub Strokes_StrokesChanged(ByVal sender As Object, ByVal e As StrokeCollectionChangedEventArgs) 
    If e.Added.Count > 0 Then
        theInkAnalyzer.AddStrokes(e.Added)
    End If

    If e.Removed.Count > 0 Then
        theInkAnalyzer.RemoveStrokes(e.Removed)
    End If

End Sub 'Strokes_StrokesChanged
// This event occurs whenever a stroke is added, removed, or partially erased
// from the InkCanvas.
void Strokes_StrokesChanged(object sender, StrokeCollectionChangedEventArgs e)
{
    if (e.Added.Count > 0)
    {
        theInkAnalyzer.AddStrokes(e.Added);
    }

    if (e.Removed.Count > 0)
    {
        theInkAnalyzer.RemoveStrokes(e.Removed);
    }
}

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

InkAnalyzer-Klasse

InkAnalyzer-Member

AddStroke-Überladung

System.Windows.Ink-Namespace

InkAnalyzer.AddStrokes

InkAnalyzerRemoveStroke()

InkAnalyzerRemoveStrokes()