verificacion selecciono seleccionar seleccion quitar puedo marca los iconos icono funciona explorador cuando cuadro cuadrito como casilla carpetas carga archivos archivo aparece abrir abre c# winforms treeview checkbox folderbrowserdialog

c# - selecciono - Cuadro de diálogo de búsqueda de carpetas con casillas de verificación?



quitar casilla de verificacion windows 10 (3)

Comience con la vista del árbol. (sin embargo, tendrá que ocuparse de buscar niños dinámicamente).

Si no le importa el espacio de nombres de Explorer (es decir, tener el Panel de control debajo de Mi PC o Escritorio con Papelera de reciclaje, Network Neigborhood y algunas cosas más a continuación), y solo necesita archivos en unidades con letras de unidad, puede comenzar enumerando la unidad letras (usando System.IO.Directory.GetLogicalDrives).

Puede obtener los iconos de shell llamando a ExtendedFileInfo.GetIconForFilename desde la biblioteca ManagedWinapi ( http://mwinapi.sourceforge.net/ ), que funciona tanto para archivos como para carpetas.

Estoy buscando la solución más fácil para implementar un diálogo de búsqueda de carpetas con casillas de verificación en frente de los directorios en mi proyecto WinForms (C #).

Vi este tipo de diálogo en Vista en el centro de respaldo. Era como un diálogo de búsqueda de carpeta normal, pero delante de cada carpeta había una casilla de verificación. Si marcó una carpeta, también se verificaron todas las carpetas y archivos, mientras que aún podría deseleccionarlos por separado posteriormente.

Si no hay control prefabricado o lo que sea para esto, entonces ¿cuál es la forma más fácil de: - Manipular un diálogo de exploración de carpeta normal para incluir la funcionalidad de casilla de verificación; o - Manipule un control TreeView para usar iconos de Shell para las rutas (por lo que los iconos del sistema son correctos para el Escritorio, Mi Música, carpetas normales, archivos, etc.) para que yo pueda crear uno yo mismo.

Nota: Quiero que el diálogo / control muestre ambos archivos y carpetas.

Gracias de antemano por cualquier consejo y sugerencias. =)


La forma más sencilla de implementar algo como esto sería usar un control TreeView estándar con la propiedad CheckBoxes establecida en verdadero. También debería poder usar imágenes si desea agregar una pequeña imagen de carpeta al lado de cada nodo.

Vea este artículo de MSDN para más información.


El FolderBrowserDialog no admite casillas de verificación. Eche un vistazo al control FolderView que muestra casillas de verificación de estado múltiple al lado de las carpetas y archivos.