Pregunta

Estoy utilizando un control de Windows Forms TreeView en mi programa. Me gustaría que el usuario pueda seleccionar varios nodos al mismo nivel arrastrando su puntero del ratón por (también llamado una selección "lazo"). No creo que un TreeView estándar permite eso.

Mi pregunta es ¿cuál sería la mejor manera de lograr esto? ¿Tengo que escribir el comportamiento selección personalizada de mi propio tal vez un control personalizado o derivada? ¿Por dónde comienzo?

No necesito una explicación detallada. Sólo un pequeño empujón en la dirección correcta.

¿Fue útil?

Solución

Esto no va a ser fácil de hacer con un control de Windows Forms TreeView estándar. El control TreeView sólo es compatible con la selección individual por árbol. No es posible seleccionar simultáneamente múltiples nodos en el árbol.

Con el fin de conseguir este comportamiento lo más probable sería acabar necesitando para crear una clase muy similar a TreeView que permitió la selección múltiple. Otra opción es derivar de TreeView y permitir la selección múltiple por razones imperiosas de comportamientos específicos. He aquí un artículo sobre cómo hacer esto último.

Otros consejos

Considere implementar la selección múltiple en un control que permite la selección múltiple como la vista de lista. Si usted sigue las normas que la mayoría de los usuarios de Windows entienden que va a terminar con una solución que sea más fácil de implementar y fácil de usar.

Si realmente necesita algo más elaborado puede que tenga que considerar el desarrollo de un control personalizado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top