DragDrop.DragOver Toegevoegde gebeurtenis
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Treedt continu op terwijl een object wordt gesleept binnen de grenzen van een element dat fungeert als een doel voor neerzetten.
see AddDragOverHandler, and RemoveDragOverHandler
see AddDragOverHandler, and RemoveDragOverHandler
see AddDragOverHandler, and RemoveDragOverHandler
Voorbeelden
In het volgende voorbeeld ziet u de DragOver gebeurtenis-handler voor een Ellipse element. Met deze code wordt gecontroleerd of het DataObject slepen over het beletselteken tekenreeksgegevens bevat die kunnen worden geconverteerd naar een Brush. Zo ja, dan wordt de DragEventArgs.Effects eigenschap ingesteld op Copy. Hiermee wordt aangegeven dat de gegevens naar het beletselteken kunnen worden gekopieerd. Als de gegevens niet naar een Brushkunnen worden geconverteerd, wordt de DragEventArgs.Effects eigenschap ingesteld op None. Dit geeft aan bij de sleepbron dat het beletselteken geen geldig drop-doel is voor de gegevens.
private void ellipse_DragOver(object sender, DragEventArgs e)
{
e.Effects = DragDropEffects.None;
// 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, allow copying.
BrushConverter converter = new BrushConverter();
if (converter.IsValid(dataString))
{
e.Effects = DragDropEffects.Copy | DragDropEffects.Move;
}
}
}
Private Sub Ellipse_DragOver(ByVal sender As System.Object, ByVal e As System.Windows.DragEventArgs)
e.Effects = DragDropEffects.None
' 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
e.Effects = DragDropEffects.Copy Or DragDropEffects.Move
End If
End If
End Sub
Opmerkingen
Deze gebeurtenis wordt continu gegenereerd terwijl een gesleept object binnen de grenzen van een element valt dat fungeert als een doel voor neerzetten. Deze gebeurtenis wordt niet gegenereerd als de eigenschap van AllowDrop het element is false.
De DragOver gebeurtenis wordt gekoppeld aan de GiveFeedback gebeurtenis in de sleepbron. In de DragOver gebeurtenis-handler controleert u meestal of de overgedragen gegevens een indeling hebben die het doel voor neerzetten kan verwerken. U kunt ook controleren of er wijzigingstoetsen worden ingedrukt, wat meestal aangeeft of de gebruiker een verplaatsing of een kopieeractie wil uitvoeren. Nadat deze controles zijn uitgevoerd, stelt u de DragEventArgs.Effects eigenschap in om de sleepbron te waarschuwen welk effect het verwijderen van de gegevens heeft. De sleepbron ontvangt deze informatie in de Effects eigenschap van de GiveFeedback gebeurtenisargumenten en kan een geschikte cursor instellen om feedback te geven aan de gebruiker.
Gerouteerde gebeurtenisgegevens
| Item | Waarde |
|---|---|
| Id-veld | DragOverEvent |
| Routeringsstrategie | Borrelen |
| Gedelegeerde | DragEventHandler |
De bijbehorende tunneling-gebeurtenis is PreviewDragOver.