Udostępnij za pośrednictwem


DragDrop.Drop Zdarzenie dołączone

Definicja

Występuje, gdy obiekt jest porzucany w granicach elementu, który działa jako cel upuszczania.

see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler

Przykłady

W poniższym przykładzie przedstawiono procedurę Drop obsługi zdarzeń dla Ellipse elementu. Ten kod stosuje efekty operacji przeciągania i upuszczania. Sprawdza, czy DataObject przeciągnięty wielokropek zawiera dane ciągów, które można przekonwertować na Brushelement . Jeśli tak, Brush element jest stosowany do wielokropka. Jeśli nie można przekonwertować danych na element , nie jest wykonywana żadna Brushakcja.

private void ellipse_Drop(object sender, DragEventArgs e)
{
    Ellipse ellipse = sender as Ellipse;
    if (ellipse != null)
    {
        // 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 and apply it to the ellipse.
            BrushConverter converter = new BrushConverter();
            if (converter.IsValid(dataString))
            {
                Brush newFill = (Brush)converter.ConvertFromString(dataString);
                ellipse.Fill = newFill;
            }
        }
    }
}
Private Sub Ellipse_Drop(ByVal sender As System.Object, ByVal e As System.Windows.DragEventArgs)
    Dim ellipse = TryCast(sender, Ellipse)
    If ellipse IsNot Nothing Then

        ' 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

Uwagi

Zdarzenie Drop jest wywoływane raz, gdy obiekt jest porzucany w granicach elementu, który działa jako cel upuszczania. To zdarzenie nie jest zgłaszane, jeśli właściwość elementu AllowDrop to false. To zdarzenie kończy operację przeciągania i upuszczania.

W procedurze obsługi zdarzeń Drop wyodrębnisz przesłane dane z DataObject obiektu i wykonasz dowolne przetwarzanie danych, których wymaga aplikacja. Aby powiadomić źródło przeciągania o wpływie upuszczania, takiego jak kopiowanie lub przenoszenie, ustaw DragEventArgs.Effects właściwość w procedurze obsługi zdarzeń Drop . Wartość tej właściwości to wartość DoDragDrop zwracana przez metodę, która zainicjowała operację przeciągania i upuszczania. Jeśli zwracana wartość nie jest zgodna z jedną z allowedEffects określonych w wywołaniu metody DoDragDrop, operacja przeciągania i upuszczania nie jest wykonywana. Początkowa wartość DragEventArgs.Effects właściwości jest taka sama jak allowedEffects określona w wywołaniu DoDragDrop metody . Jeśli właściwość nie zostanie ustawionaDragEventArgs.Effects, zwracana jest ta wartość początkowa i zakłada się, że wystąpił.allowedEffects

Informacje o zdarzeniach kierowanych

Produkt Wartość
Pole identyfikatora DropEvent
Strategia routingu Propagacji
Deleguj DragEventHandler

Odpowiednie zdarzenie tunelowania to PreviewDrop.

Dotyczy

Zobacz też