ToolStripItem.DragEnter ToolStripItem.DragEnter ToolStripItem.DragEnter ToolStripItem.DragEnter Event

Définition

Se produit lorsque l'utilisateur fait glisser un élément dans la zone cliente de cet élément.Occurs when the user drags an item into the client area of this item.

public:
 event System::Windows::Forms::DragEventHandler ^ DragEnter;
[System.ComponentModel.Browsable(false)]
public event System.Windows.Forms.DragEventHandler DragEnter;
member this.DragEnter : System.Windows.Forms.DragEventHandler 
Public Custom Event DragEnter As DragEventHandler 
Attributs

Exemples

L’exemple de code suivant montre comment convertir le X et Y propriétés à un client Point.The following code example shows how to convert the X and Y properties to a client Point. Cet exemple de code fait partie d’un exemple plus complet fourni pour la ToolStripRenderer classe.This code example is part of a larger example provided for the ToolStripRenderer class.

// This method defines the DragOver event behavior. 
protected override void OnDragOver(DragEventArgs dea)
{
    base.OnDragOver(dea);

    // Get the ToolStripButton control 
    // at the given mouse position.
    Point p = new Point(dea.X, dea.Y);
    ToolStripButton item = this.GetItemAt(
        this.PointToClient(p)) as ToolStripButton;

    // If the ToolStripButton control is the empty cell,
    // indicate that the move operation is valid.
    if( item == this.emptyCellButton )
    {
        // Set the drag operation to indicate a valid move.
        dea.Effect = DragDropEffects.Move;
    }
}
' This method defines the DragOver event behavior. 
Protected Overrides Sub OnDragOver(dea As DragEventArgs)
   MyBase.OnDragOver(dea)
   
   ' Get the ToolStripButton control 
   ' at the given mouse position.
   Dim p As New Point(dea.X, dea.Y)
   Dim item As ToolStripButton = CType(Me.GetItemAt(Me.PointToClient(p)), ToolStripButton)
   
   
   ' If the ToolStripButton control is the empty cell,
   ' indicate that the move operation is valid.
     If item Is Me.emptyCellButton Then
         ' Set the drag operation to indicate a valid move.
         dea.Effect = DragDropEffects.Move
     End If
 End Sub

Remarques

Le DragEnter événement est déclenché lorsque l’utilisateur tout d’abord fait glisser le curseur de la souris sur l’élément pendant une opération de glisser-déplacer.The DragEnter event is raised when the user first drags the mouse cursor over the item during a drag-and-drop operation.

Les notes suivantes décrivent comment et quand les événements liés aux opérations de glisser-déplacer sont déclenchés.The following remarks describe how and when events related to drag-and-drop operations are raised.

Le DoDragDrop méthode détermine l’élément sous l’emplacement du curseur.The DoDragDrop method determines the item under the current cursor location. Elle vérifie ensuite si l’élément est une cible de dépôt valide.It then checks to see if the item is a valid drop target.

Si l’élément est une cible de dépôt valide, le GiveFeedback événement est déclenché avec l’effet de glisser-déplacer spécifié.If the item is a valid drop target, the GiveFeedback event is raised with the drag-and-drop effect specified. Pour obtenir la liste des effets de glisser-déposer, consultez l’énumération DragDropEffects.For a list of drag-and-drop effects, see the DragDropEffects enumeration.

Les modifications de la position du curseur de la souris, état du clavier et état du bouton de la souris sont suivies de la manière suivante :Changes in the mouse cursor position, keyboard state, and mouse button state are tracked in the following manner:

  • Si l'utilisateur se déplace hors de la fenêtre, l'événement DragLeave est déclenché.If the user moves out of a window, the DragLeave event is raised.

  • Si la souris entre dans un autre élément, le DragEnter pour ce contrôle est déclenché.If the mouse enters another item, the DragEnter for that control is raised.

  • Si la souris se déplace uniquement dans le même élément, le DragOver événement est déclenché.If the mouse moves but stays within the same item, the DragOver event is raised.

S’il existe une modification de l’état de bouton de souris ou le clavier, la QueryContinueDrag événement est déclenché et détermine s’il faut continuer l’opération glisser, déposer les données ou annuler l’opération en fonction de la valeur de la Action propriété de l’événement QueryContinueDragEventArgs.If there is a change in the keyboard or mouse button state, the QueryContinueDrag event is raised and determines whether to continue the drag, to drop the data, or to cancel the operation based on the value of the Action property of the event's QueryContinueDragEventArgs.

Si la valeur de DragAction est Continue, le DragOver événement est déclenché pour poursuivre l’opération et le GiveFeedback événement est déclenché avec le nouvel effet, pour rétroaction visuelle appropriée.If the value of DragAction is Continue, the DragOver event is raised to continue the operation and the GiveFeedback event is raised with the new effect so appropriate visual feedback can be set. Pour obtenir la liste des effets de dépôt valides, consultez l’énumération DragDropEffects.For a list of valid drop effects, see the DragDropEffects enumeration.

Le DragOver et GiveFeedback les événements sont associés afin 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, comme suit :The DragOver and GiveFeedback events are paired so that as the mouse moves across the drop target, the user is given the most up-to-date feedback on the mouse's position, as follows:

  • Si la valeur de DragAction est Drop, la valeur d’effet de déplacement est retournée à la source, afin de 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.If the value of DragAction is Drop, the drop effect value is returned to the source, so the source application can perform the appropriate operation on the source data; for example, cut the data if the operation was a move.

  • Si la valeur de DragAction est Cancel, le DragLeave événement est déclenché.If the value of DragAction is Cancel, the DragLeave event is raised.

Notes

Le X et Y propriétés de la DragEventArgs sont en coordonnées d’écran, pas les coordonnées clientes.The X and Y properties of the DragEventArgs are in screen coordinates, not client coordinates.

Pour plus d'informations sur la gestion des événements, voir gestion et déclenchement d’événements.For more information about handling events, see Handling and Raising Events.

S’applique à