Partager via


InkOverlayStrokesDeletingEventHandler, délégué

Mise à jour : November 2007

Représente la méthode qui gère l'événement StrokesDeleting d'un objet InkOverlay.

Espace de noms :  Microsoft.Ink
Assembly :  Microsoft.Ink (dans Microsoft.Ink.dll)

Syntaxe

'Déclaration
Public Delegate Sub InkOverlayStrokesDeletingEventHandler ( _
    sender As Object, _
    e As InkOverlayStrokesDeletingEventArgs _
)
'Utilisation
Dim instance As New InkOverlayStrokesDeletingEventHandler(AddressOf HandlerMethod)
public delegate void InkOverlayStrokesDeletingEventHandler(
    Object sender,
    InkOverlayStrokesDeletingEventArgs e
)
public delegate void InkOverlayStrokesDeletingEventHandler(
    Object^ sender, 
    InkOverlayStrokesDeletingEventArgs^ e
)
/** @delegate */
public delegate void InkOverlayStrokesDeletingEventHandler(
    Object sender,
    InkOverlayStrokesDeletingEventArgs e
)
JScript ne prend pas en charge les délégués.

Paramètres

Notes

L'événement StrokesDeleting se produit avant la suppression des objets Stroke de la propriété InkOverlay.Ink.

Lorsque vous créez un délégué InkOverlayStrokesDeletingEventHandler, vous identifiez la méthode qui gère l'événement. Pour associer l'événement au gestionnaire d'événements, ajoutez une instance du délégué à l'événement. Le gestionnaire d'événements est appelé chaque fois qu'un événement se produit, sauf si vous supprimez le délégué. Pour des raisons de performances, l'intérêt d'événement par défaut est désactivé. Toutefois, il est automatiquement activé dans le code managé si vous ajoutez un gestionnaire d'événements.

Exemples

Cet exemple montre comment s'abonner à l'événement StrokesDeleting pour restaurer le dernier trait supprimé.

Lorsque l'événement StrokesDeleting se déclenche, les objets Stroke qui vont être supprimés sont enregistrés.

Private Sub mInkObject_StrokesDeleting(ByVal sender As Object, ByVal e As InkOverlayStrokesDeletingEventArgs)
    ' Store strokes for later undo. They must be stored in
    ' a separate Ink object. 
    mInkDeleted = New Ink()
    mInkDeleted.AddStrokesAtRectangle(e.StrokesToDelete, e.StrokesToDelete.GetBoundingBox())
End Sub
private void mInkObject_StrokesDeleting(object sender, InkOverlayStrokesDeletingEventArgs e)
{
    // Store strokes for later undo. They must be stored in
    // a separate Ink object. 
    mInkDeleted = new Ink();
    mInkDeleted.AddStrokesAtRectangle(e.StrokesToDelete, e.StrokesToDelete.GetBoundingBox());
}

En réponse à une action utilisateur telle qu'un clic sur un MenuItem (page pouvant être en anglais), les objets Stroke supprimés précédemment sont de nouveau ajoutés à l'objet Ink d'origine.

If Not mInkDeleted Is Nothing Then
    ' Add strokes back.  (You need to use Ink.AddStrokesAtRectangle as opposed
    ' to Strokes.Add because you are dealing with two different Ink objects.)
    mInkObject.Ink.AddStrokesAtRectangle(mInkDeleted.Strokes, mInkDeleted.Strokes.GetBoundingBox())
    mInkDeleted = Nothing
    ' For best performance, you should Invalidate the rectangle created by the 
    ' bounding box (converted from ink space to pixel space).  For simplicity,
    ' we will just refresh the entire control.
    Refresh()
End If
if (mInkDeleted != null)
{
    // Add strokes back.  (You need to use Ink.AddStrokesAtRectangle as opposed
    // to Strokes.Add because you are dealing with two different Ink objects.)
    mInkObject.Ink.AddStrokesAtRectangle(mInkDeleted.Strokes, mInkDeleted.Strokes.GetBoundingBox());
    mInkDeleted = null;
    // For best performance, you should Invalidate the rectangle created by the 
    // bounding box (converted from ink space to pixel space).  For simplicity,
    // we will just refresh the entire control.
    Refresh();
}

Plateformes

Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

Microsoft.Ink, espace de noms

InkOverlay.Ink