nubbeldupp Geschrieben 26. Oktober 2009 Geschrieben 26. Oktober 2009 Hi, ich habe ein Problem... Ich soll ein WindowsForm erstellen das folgende Aufgabe machen soll: Wenn ich eine Datei per Drag&Drop drauf ziehe und dort "ablege" soll der komplette Pfad ausgegeben werden... Mein Problem ist erstmal, dass ich kompletter Programmiernap bin... somit habe ich 0 Ahnung wie ich das bewerkstelligen soll. Ich habe jetzt einen Arbeitskollegen gefragt und der meinte ich solle einfach nach File Operations suchen... wenn ich mir die Ergebnisse jetzt durchlese verstehe ich nur noch Bahnhof. Auch vom Drag&Drop hab ich keine Ahnung... wenn ich jetzt ne Datei auf das Fenster zeieh kommt bei mir nur nen Stopzeichen bei der Maus. Hoffe Ihr könnt mir nen paar Tips geben. MfG Nubbel
Tiangou Geschrieben 26. Oktober 2009 Geschrieben 26. Oktober 2009 Dann mal schnell Quick'n Dirty, benutzt du Visual Studio? Wenn ja, als erstes in den Eigenschaften der Form "AllowDrop" auf true setzen. Dann den Event DragEnter registrieren und dann in etwa so: private void Form1_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { string[] files = (string[])(e.Data.GetData(DataFormats.FileDrop))); } } Dann hast du in dem Stringarray die vollständigen Dateinamen mit dem Pfad aller Dateien die du auf die Form gezogen hast...
nubbeldupp Geschrieben 28. Oktober 2009 Autor Geschrieben 28. Oktober 2009 Hi, danke erstmal für die Antwort... Konntenicht eher antworten, da mein I-Net daheim erst am Montag kommt :/ ALso zum ersten, ja ich benutze Visual Studio 2k8 Und davon abgesehen das ich bei deinem Code nur Bahnhof verstehe danke ich dir dafür... werde das wenn ich zu hause bin mal ausprobieren... (habe noch kein VS aufm Firmenlaptop) Greetz Nubbel
Rekon1602 Geschrieben 28. Oktober 2009 Geschrieben 28. Oktober 2009 @Locotronic: Ich hab deinen Code mal ausprobiert, aber i-wie kann ich nix auf die form ziehen... Ich hab des AllowDrop auf true gesetzt, kann aber nichts reinziehen... Hier mein Code: public Form1() { InitializeComponent(); this.DragEnter += new DragEventHandler(Form1_DragEnter); } void Form1_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { string[] files = (string[])(e.Data.GetData(DataFormats.FileDrop)); } }
0815FIA Geschrieben 28. Oktober 2009 Geschrieben 28. Oktober 2009 Das ist ja auch nur ein DragEnter EventHandler.. Will heißen, sobald du bei einer Drag Aktion in die Bounds deines Forms kommst, feuert er. Beim debuggen kannst du dann auch sehr schön sehen, wie er den absoluten Pfad des gedragten files im array speichert.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden