ToolStripItem.DragOver Événement

Définition

Se produit lorsque l'utilisateur fait glisser un élément sur la zone cliente de cet élément.

public:
 event System::Windows::Forms::DragEventHandler ^ DragOver;
[System.ComponentModel.Browsable(false)]
public event System.Windows.Forms.DragEventHandler DragOver;
[System.ComponentModel.Browsable(false)]
public event System.Windows.Forms.DragEventHandler? DragOver;
[<System.ComponentModel.Browsable(false)>]
member this.DragOver : System.Windows.Forms.DragEventHandler 
Public Custom Event DragOver As DragEventHandler 

Type d'événement

Attributs

Exemples

L’exemple de code suivant illustre l’utilisation de ce membre. Dans l’exemple, un gestionnaire d’événements signale l’occurrence de l’événement DragOver . Ce rapport vous aide à savoir quand l’événement se produit et peut vous aider dans le débogage. Pour signaler plusieurs événements ou événements qui se produisent fréquemment, envisagez de MessageBox.ShowConsole.WriteLine remplacer par ou d’ajouter le message à un message multiligne TextBox.

Pour exécuter l’exemple de code, collez-le dans un projet qui contient un instance d’un type qui hérite de ToolStripItem, tel qu’un ToolStripButton ou ToolStripMenuItem. Nommez ensuite le instance ToolStripItem1 et vérifiez que le gestionnaire d’événements est associé à l’événementDragOver.

private void ToolStripItem1_DragOver(Object sender, DragEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Data", e.Data );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyState", e.KeyState );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "X", e.X );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Y", e.Y );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "AllowedEffect", e.AllowedEffect );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Effect", e.Effect );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "DragOver Event" );
}
Private Sub ToolStripItem1_DragOver(sender as Object, e as DragEventArgs) _ 
     Handles ToolStripItem1.DragOver

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "Data", e.Data)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "KeyState", e.KeyState)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "X", e.X)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Y", e.Y)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "AllowedEffect", e.AllowedEffect)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Effect", e.Effect)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"DragOver Event")

End Sub

Remarques

L’événement DragOver est déclenché lorsque le curseur de la souris se déplace dans les limites du contrôle pendant une opération de glisser-déplacer.

Les remarques suivantes décrivent comment et quand les événements liés aux opérations de glisser-déplacer sont déclenchés.

La DoDragDrop méthode détermine l’élément sous l’emplacement actuel du curseur. Il vérifie ensuite si l’élément est une cible de suppression valide.

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

Les modifications apportées à la position du curseur de la souris, à l’état du clavier et à l’état du bouton de la souris sont suivies de la manière suivante :

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

  • Si la souris entre un autre élément, le DragEnter pour ce contrôle est déclenché.

  • Si la souris se déplace mais reste dans le même élément, l’événement DragOver est déclenché.

En cas de modification de l’état du clavier ou du bouton de la souris, l’événement QueryContinueDrag est déclenché et détermine s’il faut continuer le glisser, supprimer les données ou annuler l’opération en fonction de la valeur de la Action propriété de l’événement QueryContinueDragEventArgs.

Si la valeur de DragAction est Continue, l’événement DragOver est déclenché pour continuer l’opération et l’événement GiveFeedback est déclenché avec le nouvel effet afin que les commentaires visuels appropriés puissent être définis. Pour obtenir la liste des effets de dépôt valides, consultez l’énumération DragDropEffects.

Les DragOver événements et GiveFeedback sont associés de sorte que lorsque la souris se déplace sur la cible de suppression, l’utilisateur reçoit les commentaires les plus à jour sur la position de la souris, comme suit :

  • Si la valeur de est Drop, la valeur de DragAction l’effet de suppression est retournée à la source, de sorte que 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é.

S’applique à