2009-10-13 6 views
5

Necesito mostrar una lista de muchas cadenas de texto, cada una en una línea.¿Hay un control de repetición Silverlight (como en ASP.NET)?

Necesito elementos para ser seleccionables, así que no puedo usar ItemsControl.

que sólo necesita una "columna" y no hay que separar, por lo que una cuadrícula de datos podría ser demasiado pesado (???) necesito hasta 1000 artículos, por lo que un cuadro de lista podría ser demasiado ligero (???)

¿Qué control de Silverlight (o control Toolkit) sería mejor para este uso?

Respuesta

7

El equivalente funcional de es de hecho. Si necesita un ItemsControl que tiene de selección, utilice una de las clases heredan de selector (que coincidentemente en sí hereda de ItemsControl):
1. ComboBox
2. ListBox
3. TreeView (API Selector)
4 . AutoCompleteBox (Selector API)

Todos estos admiten la misma API ItemsControl de ItemsControl.ItemTemplate = DataTemplate.

+0

¿Hay alguna manera de desactivar el modo de selección para un ListBox? –

3

cuadrícula de datos tiene un buen rendimiento debido a la virtualización:

La cuadrícula de datos cuenta con un excelente rendimiento con grandes conjuntos de datos , ya que utiliza la virtualización, a diferencia de cualquier otro control Silverlight. Eso significa que el DataGrid solo conserva objetos en memoria para los datos que están actualmente visibles, no el conjunto completo de datos que está cargado. Esto reduce dramáticamente la sobrecarga de memoria y le permite contener prácticamente miles (o incluso millones) de filas. La única compensación es que DataGrid es un poco más lento cuando se desplaza, porque necesita borrar el conjunto actual de objetos DataGridRow y cargar la información que corresponde a las filas nuevas.

Cuestiones relacionadas