Por Sharlene Khan

Agregue soporte para cargar archivos con la usabilidad intuitiva de arrastrar y soltar.

Lectores como tú ayudan a apoyar a MUO. Cuando realiza una compra utilizando enlaces en nuestro sitio, podemos ganar una comisión de afiliado. Leer más.

Muchas aplicaciones modernas funcionan con archivos que un usuario puede cargar en su sistema. Los editores de imágenes, los IDE de código y los procesadores de texto son todos ejemplos. Si está creando una aplicación de formulario de Windows, puede agregar fácilmente esta funcionalidad como parte de su interfaz de usuario.

Las aplicaciones de Windows Forms le permiten arrastrar y soltar elementos de la interfaz de usuario, como paneles o cuadros de lista. Puede usar estos elementos de la interfaz de usuario para crear su funcionalidad de arrastrar y soltar. Cuando el usuario arrastra un archivo a un panel, puede mostrar comentarios basados ​​en ese archivo.

Cómo crear la interfaz de usuario para el contenedor de arrastrar y soltar

instagram viewer

Puede usar un elemento de panel para crear la interfaz de usuario para la funcionalidad de arrastrar y soltar. Luego puede usar un elemento de la interfaz de usuario de ListBox para mostrar los nombres de cualquier archivo que un usuario arrastre al panel.

  1. Crear una nueva aplicación de Windows Forms.
  2. En la caja de herramientas, busque un elemento de la interfaz de usuario del panel y arrástrelo al lienzo.
  3. Resalte el nuevo panel. En la ventana de propiedades, cambie los valores de las siguientes propiedades:

    Propiedad

    Nuevo valor

    Nombre

    arrastrarDropPanel

    BackColor

    Humo blanco

    Estilo de borde

    Fijo simple

    Tamaño

    600, 400

    Visible

    Verdadero

  4. En la caja de herramientas, busque un elemento de la interfaz de usuario de ListBox y arrástrelo al lienzo. Colóquelo de modo que quede dentro del panel y asegúrese de que haya algo de espacio entre el ListBox y el panel.
  5. Resalte el nuevo ListBox y cambie los valores de las siguientes propiedades:

    Propiedad

    Nuevo valor

    Nombre

    lista de archivos subidos

    BackColor

    Humo blanco

    Estilo de borde

    Ninguno

    Tamaño

    500, 300

    Visible

    FALSO

Cómo agregar el evento de arrastrar y soltar

Puedes usar eventos en una aplicación de Windows Forms para ejecutar ciertas funciones solo cuando ocurren ciertos eventos.

Para agregar funcionalidad al panel de arrastrar y soltar, deberá agregar dos eventos. El evento "DragEnter" ocurrirá cuando arrastre archivos sobre el panel. El evento "DragDrop" ocurrirá cuando suelte el mouse para colocar los archivos en el panel.

  1. Resalte el elemento de la interfaz de usuario del panel exterior.
  2. En la ventana de propiedades, haga clic en el Focos icono para abrir la lista de eventos.
  3. Haga doble clic en el ArrastrarIntro evento para generar una nueva función. Esta función se ejecutará cuando arrastre archivos sobre el panel.
  4. Dentro de la nueva función, cambia el icono del ratón para indicar la acción de arrastrar/soltar:
    privadovacíoarrastrarDropPanel_DragEnter(remitente del objeto, DragEventArgs e)
    {
    // Cambia el icono del mouse
    mi. Efecto = DragDropEffects. Todo;
    }
  5. Clickea en el Formulario 1.cs [Diseño] en la parte superior de la ventana de Visual Studio, para volver a la vista de lienzo. Resalte el elemento de la interfaz de usuario del panel.
  6. En la ventana de propiedades, haga clic en el Focos icono para volver a la lista de eventos. Esta vez, haga doble clic en el Arrastrar y soltar evento. Esto generará otra función que se ejecutará cuando suelte el mouse para colocar los archivos en el panel.
  7. Dentro de la nueva función DragDrop, obtenga la lista de archivos que el usuario está arrastrando al panel. Puede encontrar esto en los detalles del evento que se pasan automáticamente a la función.
    privadovacíoarrastrarDropPanel_DragDrop(remitente del objeto, DragEventArgs e)
    {
    cadena[] archivos = (cadena[])e. Datos. Obtener datos (formatos de datos. soltar archivos, FALSO);
    }

Cómo mostrar la lista de archivos arrastrados

Ahora que ha agregado la funcionalidad para que el usuario arrastre y suelte archivos, puede mostrar los nombres de los archivos mediante el elemento de interfaz de usuario ListBox.

  1. Dentro de la función dragDropPanel_DragDrop(), después de obtener la lista de archivos, use un bucle for para recorrer cada archivo.
    para cada (variable archivo en archivos)
    {

    }
  2. Dentro del bucle for, solo obtenga el nombre del archivo. Separe el nombre del archivo de la ruta del archivo y guárdelo en una variable separada. Si está utilizando una Mac, es posible que deba modificar el código para tener en cuenta las barras diagonales en lugar de las barras diagonales inversas.
    cadena fileName = archivo. Subcadena (archivo. ÚltimoÍndiceDe("\\") + 1, archivo. Longitud - (archivo. ÚltimoÍndiceDe("\\") + 1));
  3. Agregue el nombre del archivo al elemento de interfaz de usuario ListBox.
    intentar
    {
    lista de archivos subidos.Elementos.Agregar(Nombre del archivo);
    }
    atrapar (Excepciónexcepción)
    {
    Consola. Línea de escritura(excepción);
    }
  4. El ListBox no está visible por defecto. Después del ciclo for, cambie la visibilidad del ListBox a verdadero:
    lista de archivos cargados. visibles = verdadero;
  5. Modifique el constructor en la parte superior del archivo. Selecciona el Permitan el descenso y Desplazamiento automático propiedades del panel de arrastrar y soltar en verdadero.
    público Formulario 1()
    {
    InicializarComponente();
    arrastrarDropPanel. Permitir soltar = verdadero;
    arrastrarDropPanel. Desplazamiento automático = verdadero;
    }

Cómo borrar la lista

Después de que el usuario haya arrastrado elementos al panel, es posible que desee borrar la lista y comenzar de nuevo. Puede agregar un botón para borrar la lista cuando el usuario haga clic en él.

  1. Con la caja de herramientas, arrastre un botón al lienzo.
  2. Resalta el botón. Use la ventana de propiedades para cambiar las siguientes propiedades a los nuevos valores:

    Propiedad

    Nuevo valor

    Nombre

    Borrar botón

    Texto

    Claro

  3. Haga doble clic en el botón para generar una nueva función. Esta función se ejecutará cuando haga clic en el botón en tiempo de ejecución:
    privadovacíoclearButton_Click(remitente del objeto, EventArgs e)
    {

    }

  4. Dentro de la función, borre el contenido del elemento de la interfaz de usuario de ListBox y ocúltelo:
    privadovacíoclearButton_Click(remitente del objeto, EventArgs e)
    {
    lista de archivos subidos.Elementos.Claro();
    lista de archivos cargados. visibles = FALSO;
    }

Cómo probar el panel de arrastrar y soltar

Para probar la función de arrastrar y soltar, ejecute la aplicación y arrastre algunos archivos al panel. Si es necesario, también puede depure su aplicación Winforms en Visual Studio en tiempo de ejecución. Esto le ayudará a comprender lo que sucede en cada línea de código.

  1. Presione el botón verde de reproducción en la parte superior de la ventana de Visual Studio para ejecutar la aplicación.
  2. Arrastre algunos archivos desde su explorador de archivos y suéltelos en el panel. Asegúrese de no estar ejecutando Visual Studio en modo administrador. Deberá configurar permisos de seguridad adicionales para arrastrar y soltar para trabajar en modo administrador.
  3. El panel se actualizará para mostrarle los nombres de los archivos que arrastró al panel.
  4. Arrastre suficientes archivos y verá que el panel de arrastrar y soltar muestra una barra de desplazamiento en su lado derecho automáticamente.
  5. Clickea en el Claro botón para vaciar la lista.

Uso de la funcionalidad de arrastrar y soltar en aplicaciones de Windows Forms

Ahora es de esperar que comprenda cómo agregar la funcionalidad de arrastrar y soltar a su aplicación de Windows Forms. Hay muchas otras características que puede explorar para hacer cosas interesantes con Windows Forms.

Suscríbete a nuestro boletín

Comentarios

CompartirPíoCompartirCompartirCompartir
Copiar
Correo electrónico
Compartir
CompartirPíoCompartirCompartirCompartir
Copiar
Correo electrónico

Enlace copiado al portapapeles

Temas relacionados

  • Programación
  • Programación
  • Explorador de archivos
  • Desarrollo web

Sobre el Autor

Sharlene Khan (71 artículos publicados)

Shay trabaja a tiempo completo como desarrolladora de software y disfruta escribiendo guías para ayudar a los demás. Tiene una licenciatura en TI y tiene experiencia previa en control de calidad y tutoría. Shay ama jugar y tocar el piano.