DragDrop.Drop İliştirilmiş Olaylar
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir nesne bırakma hedefi olarak davranan bir öğenin sınırları içinde bırakıldığında gerçekleşir.
see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler
see AddDropHandler, and RemoveDropHandler
Örnekler
Aşağıdaki örnekte bir Ellipse öğenin olay işleyicisi gösterilmektedirDrop. Bu kod sürükle ve bırak işleminin etkilerini uygular. Üç noktanın üzerine sürüklenen öğesinin DataObject bir öğesine dönüştürülebilecek Brushdize verileri içerip içermediğini denetler. Öyleyse, Brush üç noktaya uygulanır. Veriler bir Brush'a dönüştürülemiyorsa hiçbir eylem gerçekleştirilmez.
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
Açıklamalar
Bir Drop nesne bırakma hedefi olarak davranan bir öğenin sınırları içinde bırakıldığında olay bir kez oluşturulur. Öğenin AllowDrop özelliği ise bu olay tetiklenmez false
. Bu olay sürükle ve bırak işlemini sonlandırır.
Olay işleyicisinde Drop , 'den DataObject aktarılan verileri ayıklar ve uygulamanızın gerektirdiği verilerin işlenmesini gerçekleştirirsiniz. Kopyalama veya taşıma gibi bırakmanın etkisini sürükleme kaynağına bildirmek için olay işleyicisinde Drop özelliğini ayarlayınDragEventArgs.Effects. Bu özelliğin değeri, sürükle ve bırak işlemini başlatan yöntemin dönüş değeridir DoDragDrop . Döndürülen değer çağrısında DoDragDropbelirtilen değerlerden biriyle allowedEffects
eşleşmiyorsa, sürükle ve bırak işlemi gerçekleştirilmez. özelliğinin DragEventArgs.Effects ilk değeri, yöntemine yapılan çağrıda belirtilen değerle DoDragDrop aynıdırallowedEffects
. özelliğini ayarlamazsanız DragEventArgs.Effects , bu başlangıç değeri döndürülür ve bunun oluştuğu varsayılır allowedEffects
.
Yönlendirilmiş Olay Bilgisi
Tanımlayıcı alanı | DropEvent |
Yönlendirme stratejisi | Köpürme |
Temsilci | DragEventHandler |
Buna karşılık gelen tünel olayı şeklindedir PreviewDrop.