/ / Dateien oder Ordner in Textfeld ziehen? C # - c #, .net, Drag & Drop

Dateien oder Ordner in eine Textbox ziehen? C # - c #, .net, ziehen und ablegen

Wie ziehe ich Dateien oder Ordner in ein Textfeld? Ich möchte den Ordnernamen in genau dieses Textfeld einfügen. C # .NET

Antworten:

16 für die Antwort № 1

Ich habe diesen Code basierend darauf geschrieben Verknüpfung

  public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
textBox1.AllowDrop = true;
textBox1.DragEnter += new DragEventHandler(textBox1_DragEnter);
textBox1.DragDrop += new DragEventHandler(textBox1_DragDrop);

}

private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effects = DragDropEffects.Copy;
else
e.Effects = DragDropEffects.None;
}

private void textBox1_DragDrop(object sender, DragEventArgs e)
{
string[] FileList = (string[])e.Data.GetData(DataFormats.FileDrop, false);


string s="";

foreach (string File in FileList)
s = s+ " "+ File ;
textBox1.Text = s;
}
}

4 für die Antwort № 2

Setzen Sie AllowDrop in Ihrer TextBox auf true und schreiben Sie den folgenden Code für die Ereignisse DragDrop und DragEnter:

    private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy;
}
}

private void textBox1_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
string[] fileNames = (string[])e.Data.GetData(DataFormats.FileDrop);
textBox1.Lines = fileNames;
}
}

1 für die Antwort № 3

CodeProject hat ein wirklich schönes Beispiel Dazu gehört, wie Sie Drag & Drop in beide Richtungen aktivieren (vom Explorer zu Ihrer App und von Ihrer App zum Explorer).


0 für die Antwort № 4

Steuerung hat verschiedene Ereignisse für den Umgang mit Drag / Drop - Sie müssen sich wahrscheinlich nur das DragDrop-Ereignis ansehen, um zu sehen, was Sie wollen.


0 für die Antwort № 5

Wenn die folgenden Fehlermeldungen angezeigt werden, gilt dies für mich, wenn Sie Visual Studio 2015 verwenden. Versuchen Sie es e.Effect statt e.Effects

Schweregrad Code Beschreibung ProjektdateiLeitungsunterdrückungsstatus Fehler CS1061 "DragEventArgs" enthält keine Definition für "Effekte" und es konnte keine Erweiterungsmethode "Effekte" gefunden werden, die ein erstes Argument vom Typ "DragEventArgs" akzeptiert (fehlt Ihnen eine using-Direktive oder eine Assemblyreferenz?)