Kein Drag and Drop mehr möglich?!

16/04/2010 - 14:24 von Andreas Mahub | Report spam
Hi Leute,

seit zwei Tagen versuche ich verzweifelt eine Drag&Drop-Option in mein
Programm einzubauen und dachte irgendwann das ich einfach zu dàmlich dafür
bin.

Habe mir dann meine Bücher genommen, Beispiele gehen nicht, habe
Beispielcodes aus dem Internet genommen wo sich jeder bedankt hat "Oh danke,
super" - gehen nicht.

Wie kann das sein das in meiner gesamten Anwendung es nicht funktioniert,
eine Datei vom Desktop in eine Form zu ziehen?!

Was habe ich gemacht. Eine neue Form erstellt, AllowDrop auf TRUE gesetzt,
im Code habe ich:
Private Sub Form1_DragEnter(ByVal sender As Object, ByVal e As
System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
MsgBox("Tach auch")
End Sub

So, Programm gestartet, eine Datei vom Desktop rübergezogen, wollte NICHT
MEHR als das das Ereignis ausgelöst wird und die Message-Box kommt. Nichts
kommt. Nur ein Symbol (klar hab ja auch kein DragDropEffects gesetzt) das
ich nichts ablegen darf.

Wo ist jetzt mein Fehler?!?!

Gruß
Andy
 

Lesen sie die antworten

#1 Martin H.
16/04/2010 - 18:06 | Warnen spam
Hallo Andreas,

um Drag & Drop zu nutzen, gehe bitte folgendermaßen vor:

1. Erstelle ein neues WinForm-Projekt
2. In Form1 setze die Eigenschaft "AllowDrop" auf True
3. Füge den nachfolgenden Code in Form1 ein:

Private Sub Form1_DragOver(ByVal sender As System.Object, ByVal e _
As System.Windows.Forms.DragEventArgs) Handles MyBase.DragOver
Dim files() As String
Dim AllFiles As String = String.Empty
files = CType(e.Data.GetData("FileDrop", True), String())
For Each file As String In files
AllFiles &= file & vbNewLine
Next
MsgBox(AllFiles)
End Sub


4. Ziehe eine oder mehrere Datei(en) auf das Form
5. Es erscheint eine MessageBox mit allen Dateinamen

Ich habe es in VB 2008 geschrieben (Framework 3.5). Es sollte aber unter
allen anderen Frameworks ebenso funktionieren.

Beste Grüße,

Martin

Am 16.04.2010 14:24, schrieb Andreas Mahub:
Hi Leute,

seit zwei Tagen versuche ich verzweifelt eine Drag&Drop-Option in mein
Programm einzubauen und dachte irgendwann das ich einfach zu dàmlich
dafür bin.

Habe mir dann meine Bücher genommen, Beispiele gehen nicht, habe
Beispielcodes aus dem Internet genommen wo sich jeder bedankt hat "Oh
danke, super" - gehen nicht.

Wie kann das sein das in meiner gesamten Anwendung es nicht
funktioniert, eine Datei vom Desktop in eine Form zu ziehen?!

Was habe ich gemacht. Eine neue Form erstellt, AllowDrop auf TRUE
gesetzt, im Code habe ich:
Private Sub Form1_DragEnter(ByVal sender As Object, ByVal e As
System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
MsgBox("Tach auch")
End Sub

So, Programm gestartet, eine Datei vom Desktop rübergezogen, wollte
NICHT MEHR als das das Ereignis ausgelöst wird und die Message-Box
kommt. Nichts kommt. Nur ein Symbol (klar hab ja auch kein
DragDropEffects gesetzt) das ich nichts ablegen darf.

Wo ist jetzt mein Fehler?!?!

Gruß
Andy

Ähnliche fragen