DragDrop.Drop Ansluten händelse

Definition

Inträffar när ett objekt släpps inom gränserna för ett element som fungerar som ett släppmål.

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

Exempel

I följande exempel visas Drop händelsehanteraren för ett Ellipse element. Den här koden tillämpar effekterna av dra och släpp-åtgärden. Den kontrollerar om den DataObject som dras över ellipsen innehåller strängdata som kan konverteras till en Brush. I så fall Brush tillämpas den på ellipsen. Om data inte kan konverteras till en Brushutförs ingen åtgärd.

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

Kommentarer

Händelsen Drop utlöses en gång när ett objekt släpps inom gränserna för ett element som fungerar som ett släppmål. Den här händelsen utlöses inte om elementets AllowDrop egenskap är false. Den här händelsen avslutar dra och släpp-åtgärden.

Drop I händelsehanteraren extraherar du de överförda data från DataObject och utför all bearbetning av de data som programmet kräver. Om du vill meddela dragkällan om effekten av släppet, till exempel en kopia eller flytt, anger du DragEventArgs.Effects egenskapen i Drop händelsehanteraren. Värdet för den här egenskapen är returvärdet för metoden DoDragDrop som initierade dra och släpp-åtgärden. Om värdet som returneras inte matchar något av de allowedEffects angivna i anropet till DoDragDroputförs inte dra och släpp-åtgärden. Det initiala värdet för DragEventArgs.Effects egenskapen är samma som det allowedEffects som anges i anropet till DoDragDrop metoden. Om du inte anger DragEventArgs.Effects egenskapen returneras det här initiala värdet och det antas att det allowedEffects inträffade.

Information om dirigerad händelse

Objekt Value
Identifierarfält DropEvent
Routningsstrategi Bubblande
Delegera DragEventHandler

Motsvarande tunnelhändelse är PreviewDrop.

Gäller för

Se även