InkCanvas.StrokesReplaced イベント

定義

Strokes プロパティが置き換えられると発生します。Occurs when the Strokes property is replaced.

public:
 event System::Windows::Controls::InkCanvasStrokesReplacedEventHandler ^ StrokesReplaced;
public event System.Windows.Controls.InkCanvasStrokesReplacedEventHandler StrokesReplaced;
member this.StrokesReplaced : System.Windows.Controls.InkCanvasStrokesReplacedEventHandler 
Public Event StrokesReplaced As InkCanvasStrokesReplacedEventHandler 

StrokeCollection 同じInkCanvasに併置されている2つのオブジェクトを使用する方法を次の例に示します。The following example demonstrates how to use two StrokeCollection objects that are co-located on the same InkCanvas. この例では、プレーヤー one と player 2 が、同じInkCanvasを共有している場合でも、それぞれ個別の "手書き入力画面" を使用します。In this example, player one and player two each use an individual "inking surface" even though they share the same InkCanvas. この例では、 switchPlayersButton_Clickイベントがイベントハンドラーに接続されていることを前提としています。This example assumes that the switchPlayersButton_Click event is connected to the event handler.

StrokeCollection player1;
StrokeCollection player2;

void InitializePlayersCanvases()
{
    player1 = inkCanvas1.Strokes;
    player2 = new StrokeCollection();
}

// Use a different "inking surface" for each player.
void switchPlayersButton_Click(object sender, RoutedEventArgs e)
{
    if (StrokeCollection.ReferenceEquals(inkCanvas1.Strokes, player1))
    {
        inkCanvas1.Strokes = player2;
    }
    else
    {
        inkCanvas1.Strokes = player1;
    }
}

void inkCanvas1_StrokesReplaced(object sender, InkCanvasStrokesReplacedEventArgs e)
{
    if (StrokeCollection.ReferenceEquals(e.NewStrokes, player1))
    {
        Title = "Player one's turn";
    }
    else
    {
        Title = "Player two's turn";
    }
}
Private player1 As StrokeCollection
Private player2 As StrokeCollection


Sub InitializePlayersCanvases()

    player1 = inkCanvas1.Strokes
    player2 = New StrokeCollection()

End Sub


' Use a different "inking surface" for each player.
Private Sub switchPlayersButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)

    If StrokeCollection.ReferenceEquals(inkCanvas1.Strokes, player1) Then
        inkCanvas1.Strokes = player2
    Else
        inkCanvas1.Strokes = player1
    End If

End Sub


Private Sub inkCanvas1_StrokesReplaced(ByVal sender As Object, _
                               ByVal e As InkCanvasStrokesReplacedEventArgs)

    If StrokeCollection.ReferenceEquals(e.NewStrokes, player1) Then
        Title = "Player one's turn"
    Else
        Title = "Player two's turn"
    End If

End Sub

適用対象