DragDrop.DragEnter Événement attaché

Définition

Se produit quand un objet est déplacé dans les limites d’un élément qui fait office de cible de déplacement.Occurs when an object is dragged into the bounds of an element that is acting as a drop target.

see AddDragEnterHandler, and RemoveDragEnterHandler
see AddDragEnterHandler, and RemoveDragEnterHandler
see AddDragEnterHandler, and RemoveDragEnterHandler

Exemples

L'exemple suivant illustre le gestionnaire d'événements DragEnter pour un élément Ellipse.The following example shows the DragEnter event handler for an Ellipse element. Ce code permet d'obtenir un aperçu des effets de l'opération de glisser-déplacer en enregistrant le pinceau Fill actif.This code previews the effects of the drag-and-drop operation by saving the current Fill brush. Il vérifie ensuite si le DataObject glissé sur l’ellipse contient des données de chaîne qui peuvent être converties en Brush.It then checks to see if the DataObject being dragged over the ellipse contains string data that can be converted to a Brush. Dans ce cas, le Brush est appliqué à l'ellipse.If so, the Brush is applied to the ellipse. La modification peut être annulée dans le gestionnaire d'événements DragLeave.The change is reverted in the DragLeave event handler. Si les données ne peuvent pas être converties en Brush, aucune action n'est effectuée.If the data cannot be converted to a Brush, no action is performed.

private Brush _previousFill = null;
private void ellipse_DragEnter(object sender, DragEventArgs e)
{
    Ellipse ellipse = sender as Ellipse;
    if (ellipse != null)
    {
        // Save the current Fill brush so that you can revert back to this value in DragLeave.
        _previousFill = ellipse.Fill;
        
        // If the DataObject contains string data, extract it.
        if (e.Data.GetDataPresent(DataFormats.StringFormat))
        {
            string dataString = (string)e.Data.GetData(DataFormats.StringFormat);

            // If the string can be converted into a Brush, convert it.
            BrushConverter converter = new BrushConverter();
            if (converter.IsValid(dataString))
            {
                Brush newFill = (Brush)converter.ConvertFromString(dataString);
                ellipse.Fill = newFill;
            }
        }
    }
}
Private _previousFill As Brush = Nothing
Private Sub Ellipse_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.DragEventArgs)
    Dim ellipse = TryCast(sender, Ellipse)
    If ellipse IsNot Nothing Then
        ' Save the current Fill brush so that you can revert back to this value in DragLeave.
        _previousFill = ellipse.Fill

        ' If the DataObject contains string data, extract it.
        If e.Data.GetDataPresent(DataFormats.StringFormat) Then
            Dim dataString = e.Data.GetData(DataFormats.StringFormat)

            ' If the string can be converted into a Brush, convert it.
            Dim converter As New BrushConverter()
            If converter.IsValid(dataString) Then
                Dim newFill As Brush = CType(converter.ConvertFromString(dataString), Brush)
                ellipse.Fill = newFill
            End If
        End If
    End If
End Sub

Remarques

Cet événement est déclenché chaque fois qu’un objet est glissé dans les limites d’un élément qui agit comme cible de déplacement.This event is raised once each time an object is dragged into the bounds of an element that is acting as a drop target. Cet événement n’est pas déclenché si la propriété AllowDrop de l’élément est false.This event is not raised if the element's AllowDrop property is false.

La gestion de cet événement est facultative pour la cible de déplacement et n’est pas nécessaire pour tous les scénarios de glisser-déplacer.Handling this event is optional for the drop target, and is not necessary for all drag-and-drop scenarios. En général, la gestion de cet événement vous permet d’obtenir un aperçu des effets de l’opération de glisser-déplacer, si cela est adapté à votre application.You typically handle this event to provide a preview of the effects of the drag-and-drop operation, if appropriate for your application. Ne définissez pas la propriété DragEventArgs.Effects dans l'événement DragEnter, car elle sera remplacée dans l'événement DragOver.Do not set the DragEventArgs.Effects property in the DragEnter event, as it will be overwritten in the DragOver event.

Informations sur les événements acheminésRouted Event Information

Champ d’identificateurIdentifier field DragEnterEvent
Stratégie de routageRouting strategy PropagationBubbling
déléguéDelegate DragEventHandler

L’événement de tunneling correspondant est PreviewDragEnter.The corresponding tunneling event is PreviewDragEnter.

S’applique à

Voir aussi