ListBox vs. ListView: cómo elegir el enlace de datos

318

Estoy considerando un ListBox o un ListView para una aplicación WPF. Parece que admite enlaces de datos y plantillas de elementos. Mi aplicación tiene una lista simple de elementos que tengo la intención de poder buscar / ordenar / filtrar según la entrada del usuario. La demostración de enlace de datos ( http://msdn.microsoft.com/en-us/library/ms771319.aspx ) utiliza un ListBox con un CollectionViewSource.

¿Alguien tiene pros / contras para qué control usar y cuándo?

Geoff Cox
fuente

Respuestas:

364

Un ListView es un ListBox especializado (es decir, hereda de ListBox). Le permite especificar diferentes vistas en lugar de una lista directa. Puede rodar su propia vista o usar GridView (piense en una "vista de detalles" similar al explorador). Básicamente es el cuadro de lista de varias columnas, el primo de la vista de lista del formulario de Windows.

Si no necesita las capacidades adicionales de ListView, ciertamente puede usar ListBox si simplemente está mostrando una lista de elementos (incluso si la plantilla es compleja).

Philip Rieck
fuente
44
¿Cuál es la diferencia entre eso y DataGrid? A menos que ListViewle permite cambiar dinámicamente la vista (como ganar-explorer - lista, detalles, iconos grandes), no veo por qué usarlo ...
JobaDiniz