DragDrop.Drop Zdarzenie dołączone
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Występuje, gdy obiekt jest porzucany w granicach elementu, który działa jako obiekt docelowy drop.
see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler
Przykłady
Poniższy przykład przedstawia 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ągu, które można przekonwertować na Brushobiekt . 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 drop. 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ębniasz przesłane dane z obiektu DataObject i wykonujesz dowolne przetwarzanie danych, których wymaga aplikacja. Aby powiadomić źródło przeciągania o wpływie upuszczania, na przykład kopię lub przeniesienie, 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
wartości 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 ustawiona DragEventArgs.Effects , zwracana jest ta wartość początkowa i zakłada się, że wystąpiła allowedEffects
.
Informacje dotyczące kierowanego zdarzenia
Pole identyfikatora | DropEvent |
Strategia routingu | Propagacji |
Delegat | DragEventHandler |
Odpowiednie zdarzenie tunelowania to PreviewDrop.