Drag und drop funktioniert nicht
Ich habe ein upload - /download-Dienst, den ich mit WCF. Im mit c sharp als Programmiersprache.
Ich Erlaube drop auf meine textbox, die nimmt die Elemente gezogen werden, aber es mir nicht erlauben, es zu tun, noch bekomme ich, dass kein Zeichen über ihm schwebt.
Gibt es etwas Im fehlt?
Zur info habe ich aus einem anderen Programm mit dem genau gleichen code und ich konnte ziehen-und-drop-Elemente, kein problem.
private void FileTextBox_DragEnter(object sender, DragEventArgs e)
{
//Makes sure that the user is dropping a file, not text
if (e.Data.GetDataPresent(DataFormats.FileDrop, false) == true)
//Allows them to continue
e.Effect = DragDropEffects.Copy;
else
e.Effect = DragDropEffects.None;
}
private void FileTextBox_DragDrop(object sender, DragEventArgs e)
{
String[] files = (String[])e.Data.GetData(DataFormats.FileDrop);
foreach (string file in files)
{
FileTextBox.Text = file.ToString();
}
}
TextBox
ist nicht geeignet, Kontrolle zu fügen, um durch eine Schleife. Die erste Datei, oder verwenden Sie ein list-Steuerelement statt.- Ich denke du meinst WPF WCF nicht.
Du musst angemeldet sein, um einen Kommentar abzugeben.
diese sind nicht der einzige code, den Sie benötigen. Sie benötigen:
Natürlich, wenn Sie ein IDE sind, können Sie erreichen dies durch die Zuordnung der Prozeduren im Formular-designer.
Load
- handler-Funktion, z.B.:Form1_Load
.FileTextBox.DragEnter += new DragEventHandler (FileTextBox_DragEnter);
und im debug-Modus ausgeführt? sehen, ob der debugger hält an dieser Linie.FileTextBox.AllowDrop = true;
helfen?Den 'normalen'
DragEnter
,DragOver
,Drop
, ... Ereignisse, die nicht für die Arbeit einer TextBox! VerwendenPreviewDragEnter
,PreviewDragOver
,PreviewDrop
statt!Stellen Sie auch sicher, dass ein
DragDropEffects
ist in der PreviewDragOver, und/oder PreviewDragEnter delegieren!Kleines Beispiel: Drop einen Ordner, um die textbox
XAML-Teil:
CodeBehind-Teil: