# VListDataView

**Hereda de:** [VAbstractListDataView](vabstractlistdataview).

Esta clase representa a un objeto [ListView](../../../../proyectos-objetos-y-editores/proyecto-de-aplicacion/listview).

## Indice de [propiedades](#documentación-de-propiedades)

Number [flow](#flow)

Number [gridHeight](#gridheight)

Number [gridWidth](#gridwidth)

Boolean [isWrapping](#iswrapping)

Number [layoutMode](#layoutmode)

Number [movement](#movement)

Number [resizeMode](#resizemode)

Number [spacing](#spacing)

Boolean [uniformItemSizes](#uniformitemsizes)

Number [viewMode](#viewmode)

Boolean [wordWrap](#wordwrap)

## Indice de funciones

### **Generales**

void [scrollToBottom](#scrolltobottom)()

void [scrollToItem](#scrolltoitem)( Number index )

void [scrollToTop](#scrolltotop)()

void [selectAll](#selectall)()

void [setGridSize](#setgridsize)( Number width, Number height )

## Enumeraciones

**Flow**

* LeftToRight = 0
* TopToBottom = 1

**Layout mode**

* SinglePass = 0
* Batched = 1

**Movement**

* Static = 0
* Free = 1
* Snap = 2

**Resize mode**

* Fixed = 0
* Adjust = 1

**View mode**

* ListMode = 0
* IconMode = 1

## Documentación de propiedades

#### flow

Permite leer o configurar la dirección en la que deben fluir los elementos deben fluir. Ver enum Flow. Si esta propiedad es LeftToRight, los artículos serán dispuestos de izquierda a derecha. Si la propiedad isWrapping es true, el diseño se ajustará cuando se alcanza el lado derecho de la zona visible. Si esta propiedad es TopToBottom, los elementos quedan dispuestos desde la parte superior de la zona visible, envolviendo cuando alcanza la parte inferior. Modificar esta propiedad cuando la vista es visible hará que los elementos se establezcan de nuevo. De forma predeterminada, esta propiedad se establece en TopToBottom.

#### gridHeight

Permite leer o configurar la altura de la celda para la distribución automática de los items. Si gridWidth o gridHeight son nulas la distribución de los items es manual (por defecto).

Con la función setGridSize(nWidth,nHeight) se pueden modificar a la vez las propiedades gridWidth y gridHeight.

#### gridWidth

Permite leer o configurar la anchura de la celda para la distribución automática de los items. Si gridWidth o gridHeight son nulas la distribución de los items es manual (por defecto).

Con la función setGridSize(nWidth,nHeight) se pueden modificar a la vez las propiedades gridWidth y gridHeight.

#### isWrapping

Permite leer o configurar si los elementos se comportarán de forma circular. Modificar esta propiedad cuando la vista es visible hará que los elementos se establezcan de nuevo. De forma predeterminada, esta propiedad es false.

#### layoutMode

Permite leer o configurar si la carga de los elementos debe ocurrir inmediatamente o se debe demorar. Ver enum Layout mode. Cuando el modo es SinglePass (por defecto), los elementos se cargan todos de una vez. Cuando el modo se dosifica, los elementos se disponen en lotes de elementos BatchSize, durante el procesamiento de eventos. Esto hace que sea posible ver al instante e interactuar con los elementos visibles, mientras que el resto está siendo cargados.

#### movement

Permite leer o configurar si los elementos se pueden mover libremente, se ajustan a una red, o no se pueden mover en absoluto. Ver enum Movement. Esta propiedad determina cómo el usuario puede mover los elementos en la vista. Static significa que los artículos no pueden ser trasladados al usuario. Free significa que el usuario puede arrastrar y soltar los elementos a cualquier posición en la vista. Snap significa que el usuario puede arrastrar y soltar los elementos, pero sólo para las posiciones en una red teórica representada por la propiedad gridSize. Al establecer esta propiedad cuando la vista es visible hará que los elementos se establezcan de nuevo. De forma predeterminada, esta propiedad se establece como Estática.

#### resizeMode

Permite leer o configurar si los elementos se colocan de nuevo cuando la vista cambia de tamaño. Ver enum Resize mode. Si se modifica la propiedad al valor Adjust, los elementos se colocarán de nuevo cuando la vista cambia de tamaño. Si el valor es Fixed, los elementos no cambiarán si el control cambia de tamaño. De forma predeterminada, esta propiedad se establece en Adjust.

#### spacing

Permite leer o configurar el espacio alrededor de los elementos en el control. El tamaño del espacio vacío que se rellena en torno a un elemento. Al establecer esta propiedad cuando el control es visible hará que los elementos que se pinten de nuevo. De forma predeterminada, esta propiedad contiene un valor de 0.

#### uniformItemSizes

Permite leer o configurar si todos los elementos del control tienen el mismo tamaño. Esta propiedad sólo debe establecerse a true si se garantiza que todos los elementos de la vista tienen el mismo tamaño. Esto permite al control optimizarse para mejorar el rendimiento. De forma predeterminada, esta propiedad es false.

#### viewMode

Permite leer o configurar el modo de vista entre ListMode e IconMode. Ver enum View mode.

#### wordWrap

Permite leer o configurar si el texto contenido en los elementos se ajustará por palabra. Si esta propiedad es true, el texto del elemento se ajusta, de lo contrario no se ajusta en absoluto. Esta propiedad es false de forma predeterminada. Tenga en cuenta que incluso si el ajuste está activado, la celda no se ampliará para dar cabida al texto. Se imprimirán puntos suspensivos para el texto que no se puede mostrar, de acuerdo con textElideMode de la vista.

## Documentación de funciones

### Funciones generales

#### void scrollToBottom() <a href="#scrolltobottom" id="scrolltobottom"></a>

El control hace scroll hasta mostrar el último elemento de la lista.

#### void scrollToItem( Number index ) <a href="#scrolltoitem" id="scrolltoitem"></a>

El control realiza scroll hasta que esté visible el ítem con la posición especificado en el parámetro.

Parámetros:

* index: número que representa la posición del elemento a mostrar.

#### void scrollToTop() <a href="#scrolltotop" id="scrolltotop"></a>

El control hace scroll hasta mostrar el primer elemento de la lista.

#### void selectAll() <a href="#selectall" id="selectall"></a>

Selecciona todos los elementos del listbox.

#### void setGridSize( Number width, Number height ) <a href="#setgridsize" id="setgridsize"></a>

Permite modificar a la vez las propiedades gridWidth y gridHeight. De este modo solo se refrescará el control una vez.

Parámetros:

* width: ancho en píxeles.
* height: alta en píxeles.

## Ejemplo

### Forzar el scroll de un listView hasta un ítem concreto

```
// Capturamos el formulario
form = theRoot.dataView();

// Accedemos al control list box. Se resuelve con el identificador del control
listbox = form.control("VIS");

//Forzamos scroll hasta el ítem 90
listbox.scrollToItem(90);
```
