¿Cómo arrastro archivos o carpetas en un cuadro de texto? quiero poner el nombre de la carpeta en ese mismo cuadro de texto. C# .NET¿arrastrar archivos o carpetas en el cuadro de texto? C#
Respuesta
de escribir este código basado en este link
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;
}
}
Control tiene varios eventos para tratar con la función de arrastrar/soltar; probablemente solo tendrá que mirar el evento DragDrop para lo que desee.
Conjunto AllowDrop true en el cuadro de texto y escribir el siguiente código para los eventos DragDrop y 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;
}
}
CodeProject has a really nice example de hacer esto , incluyendo cómo habilitar arrastrar y soltar en ambos sentidos (desde el Explorador a su aplicación y desde su aplicación al Explorador).
Si se obtienen los siguientes mensajes de error, esto se aplica a mí cuando se utiliza Visual Studio 2015, intenta e.Effect en lugar de e.Effects
código de gravedad Descripción del Proyecto Estado de supresión de línea del archivo CS1061 error 'DragEventArgs' no contiene una definición para 'Efectos' y no se pudo encontrar ningún método de extensión 'Efectos' que aceptara un primer argumento de tipo 'DragEventArgs' (¿falta una directiva using o una referencia de ensamblado?)
- 1. Wpf: Arrastrar y soltar a un cuadro de texto
- 2. Cómo copiar archivos de texto en C o C++?
- 3. Copie carpetas sin archivos, archivos sin carpetas o todo usando PowerShell
- 4. HTML5 Arrastrar y colocar: Cargar archivo de texto en un cuadro de texto con JavaScript
- 5. Distinga entre carpetas y archivos en C++
- 6. Arrastrar y soltar el archivo de texto
- 7. C# arrastrar y soltar archivos en el formulario
- 8. Ctrl + C en un cuadro de texto
- 9. C# string Poner en Cuadro de texto
- 10. ¿Puede HTML 5 arrastrar y soltar carpetas de control?
- 11. Seguimiento de archivos/carpetas
- 12. Seleccionar texto en un cuadro de texto deshabilitado en C#
- 13. HTML5 Arrastrar y soltar: detectar carpetas en Safari (FileList, Archivo)
- 14. Arrastrar y soltar: solo se aceptan carpetas
- 15. Insertar texto en el cuadro de texto de otra aplicación
- 16. Abrir archivo en el cuadro de texto enriquecido con C#
- 17. Enlaces en el cuadro de texto de C#
- 18. Texto de arrastrar y soltar sobre DIV
- 19. Eliminar archivos o carpetas de forma recursiva en Windows cmd
- 20. ¿Cómo detectar cambios de archivos o carpetas en Android?
- 21. Mover archivos entre carpetas
- 22. Cómo usar filegroupdescriptor para arrastrar archivos al explorador C#
- 23. formato de cuadro de texto C# decimal
- 24. ¿Cómo crear carpetas usando nombres de archivos y luego mover archivos a carpetas?
- 25. C# - Validación del cuadro de texto
- 26. C# - ¿Cómo personalizar OpenFileDialog para seleccionar varias carpetas y archivos?
- 27. Obtener el texto del cuadro combinado en C#
- 28. ¿Cómo destaco el texto en un cuadro de texto en un programa C# Winforms?
- 29. jQuery que se puede arrastrar: el cuadro que se puede arrastrar pasa por el contenedor - ¿error?
- 30. ajuste de texto en el cuadro de