Exporter (0) Imprimer
Développer tout
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Control.DragLeave, événement

Se produit lorsqu'un objet est déplacé en dehors des limites d'un contrôle.

Espace de noms :  System.Windows.Forms
Assembly :  System.Windows.Forms (dans System.Windows.Forms.dll)

public event EventHandler DragLeave

L'événement DragLeave se déclenche lorsque l'utilisateur fait glisser le curseur hors du contrôle ou lorsqu'il annule l'opération de glisser-déplacer.

Les lignes suivantes décrivent de quelle façon et à quel moment se déclenchent les événements liés aux opérations de glisser-déplacer.

La méthode DoDragDrop détermine quel est le contrôle situé sous l'emplacement actuel du curseur. Elle vérifie ensuite si le contrôle est une cible de déplacement valide.

Si le contrôle est une cible de déplacement valide, l'événement GiveFeedback est déclenché avec l'effet de glisser-déplacer spécifié. Pour obtenir la liste des effets de glisser-déplacer, consultez l'énumération DragDropEffects.

Les modifications de la position du curseur de la souris, de l'état du clavier et de l'état du bouton de la souris sont suivies.

  • Si l'utilisateur se déplace hors de la fenêtre, l'événement DragLeave se déclenche.

  • Si la souris entre dans un autre contrôle, le DragEnter du contrôle se déclenche.

  • Si la souris se déplace uniquement dans les limites du même contrôle, l'événement DragOver se déclenche.

Si une modification de l'état du clavier ou du bouton de la souris se produit, l'événement QueryContinueDrag se déclenche et détermine s'il faut continuer l'opération glisser, déplacer les données ou annuler l'opération en fonction de la valeur de la propriété Action de l'événement QueryContinueDragEventArgs.

  • Si la valeur de DragAction est Continue, l'événement DragOver est déclenché pour poursuivre l'opération et l'événement GiveFeedback est déclenché avec le nouvel effet, pour fournir une rétroaction visuelle appropriée. Pour obtenir la liste des effets d'opérations déplacer valides, consultez l'énumération DragDropEffects.

    RemarqueRemarque

    Les événements DragOver et GiveFeedback sont associés de telle sorte que lorsque la souris se trouve sur la cible de déplacement, l'utilisateur reçoit les commentaires les plus actuels sur la position de la souris.

  • Si la valeur de DragAction est Drop, la valeur de l'effet de déplacement est retournée à la source. Ainsi, l'application source peut effectuer l'opération appropriée sur les données sources : par exemple, couper les données si l'opération était un déplacement.

  • Si la valeur de DragAction est Cancel, l'événement DragLeave est déclenché.

Pour plus d'informations sur la gestion des événements, consultez Consommation d'événements.

L'exemple de code suivant illustre une opération de glisser-déplacer entre deux contrôles ListBox. L'exemple appelle la méthode DoDragDrop lorsque l'action glisser commence. L'action glisser démarre si la souris a été déplacée de plus de SystemInformation.DragSize par rapport à sa position précédente au cours de l'événement MouseDown. La méthode IndexFromPoint est utilisée pour déterminer l'index de l'élément à faire glisser au cours de l'événement MouseDown.

L'exemple illustre également l'utilisation de curseurs personnalisés pour l'opération glisser-déplacer. L'exemple requiert qu'il existe deux fichiers curseur, 3dwarro.cur et 3dwno.cur, dans le répertoire de l'application pour les curseurs de glisser-déplacer (drag) et d'interdiction (no-drop) personnalisés, respectivement. Les curseurs personnalisés sont utilisés si UseCustomCursorsCheck CheckBox est activé. Les curseurs personnalisés sont définis dans le gestionnaire d'événements GiveFeedback.

L'état du clavier est évalué dans le gestionnaire d'événements DragOver du ListBox de droite, afin de déterminer l'opération glisser en fonction de l'état des touches MAJ, CTRL, ALT ou CTRL+ALT. L'emplacement dans la ListBox où l'opération déplacer peut avoir lieu est également déterminé au cours de l'événement DragOver. Si les données à déplacer ne sont pas String, DragEventArgs.Effect a alors la valeur None dans DragDropEffects. Enfin, l'état de l'opération de déplacement est affiché dans DropLocationLabelLabel.

Les données à déplacer pour la ListBox de droite sont déterminées dans le gestionnaire d'événements DragDrop et la valeur String est ajoutée à l'emplacement approprié dans la ListBox. Si l'opération glisser va au-delà des limites du formulaire, l'opération de glisser-déplacer est annulée dans le gestionnaire d'événements QueryContinueDrag.

Cet extrait de code montre comment utiliser l'événement DragLeave. Consultez la méthode DoDragDrop pour obtenir un exemple de code complet.


private void ListDragTarget_DragLeave(object sender, System.EventArgs e) {
    // Reset the label text.
    DropLocationLabel.Text = "None";
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

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

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft