次の方法で共有


InkAnalyzer.AddStrokes メソッド (StrokeCollection)

指定された StrokeCollectionInkAnalyzer に追加し、アクティブな入力スレッドのロケール識別子を各ストロークに割り当てます。

名前空間 :  System.Windows.Ink
アセンブリ :  IAWinFX (IAWinFX.dll 内)

構文

'宣言
Public Function AddStrokes ( _
    strokesToAdd As StrokeCollection _
) As ContextNode
'使用
Dim instance As InkAnalyzer
Dim strokesToAdd As StrokeCollection
Dim returnValue As ContextNode

returnValue = instance.AddStrokes(strokesToAdd)
public ContextNode AddStrokes(
    StrokeCollection strokesToAdd
)
public:
ContextNode^ AddStrokes(
    StrokeCollection^ strokesToAdd
)
public ContextNode AddStrokes(
    StrokeCollection strokesToAdd
)
public function AddStrokes(
    strokesToAdd : StrokeCollection
) : ContextNode

パラメータ

戻り値

型 : System.Windows.Ink.ContextNode
strokesToAdd が追加される ContextNode

解説

InkAnalyzer は、StrokeCollectionRootNode プロパティの SubNodes コレクション内の UnclassifiedInkNode に追加します。StrokeCollection コレクション、strokesToAdd の各ストロークに、アクティブな入力スレッドのロケール識別子を割り当てます。コレクションの各ストロークを、同じロケール識別子のストロークを格納する最初の UnclassifiedInkNode にも追加します。そのような UnclassifiedInkNode が存在しない場合、新しい UnclassifiedInkNode が作成され、strokesToAdd が新しい UnclassifiedInkNode に追加されます。

このメソッドは、DirtyRegion を、領域の現在の値と追加されたストロークの境界ボックスの結合に拡張します。

いずれかのストロークが既に InkAnalyzer に結合されている場合、InkAnalyzer は例外をスローします。

次の例では、新しい InkAnalyzer を作成し、StrokesChanged イベント ハンドラを、theInkCanvas という名前の InkCanvasStrokes プロパティに結合します。

theInkAnalyzer = New InkAnalyzer()

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

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

次の例では、Strokes_StrokesChanged イベント ハンドラを定義します。このイベント ハンドラは、ストロークが既に theInkCanvas に追加されていた場合は、ストロークを theInkAnalyzer に追加します。ストロークが既に theInkCanvas から削除されていた場合は、theInkAnalyzer からストロークを削除します。

' 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);
    }
}

プラットフォーム

Windows Vista

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.0

参照

参照

InkAnalyzer クラス

InkAnalyzer メンバ

AddStrokes オーバーロード

System.Windows.Ink 名前空間

InkAnalyzer.AddStroke

InkAnalyzerRemoveStroke()

InkAnalyzerRemoveStrokes()