2012-06-14 6 views
6

Tengo un DataGrid que quiero crecer verticalmente (altura) a medida que le agrego filas. El widget para agregar a la cuadrícula debe estar directamente debajo de DataGrid. ¿Cómo hago esto?GWT DataGrid Dimensionamiento

La respuesta a la "altura automática GWT DataGrid" era demasiado oscura (si era una). Intenté colocar DataGrid en ResizeLayoutPanel, pero solo muestra el encabezado de la cuadrícula de datos.

+3

¿Puedo preguntar por qué estás usando un DataGrid si no quieres que sea de tamaño fijo (o dimensionado por el entorno en lugar de por el contenido) ¿No resolvería su problema una CellTable? (si desea el desplazamiento horizontal, también hay soluciones con CellTable) –

+1

Me había ido con DataGrid como me gustaba porque los encabezados están anclados a diferencia de CellTable. – Joel

+1

Sí. Es por eso que utilicé DataGrid, los encabezados son pinnables (permanecen en su lugar). Las CellTables no pueden ser ancladas por lo que yo sé. – Joel

Respuesta

1

Para aquellos que aún luchan con CellTable (altura automática, buscapersonas siempre debajo de la última línea) y DataGrid (cabezal fijo pero la altura debe ser fija y el buscapersonas permanecerá en el mismo lugar incluso si tiene una línea de datos) .

No se olvide que se extienden de la misma clase: AbstractCellTable

modo que pueda adaptar su código fácilmente (Nota TableType es sólo una enumeración creé):

if (tableType == TableType.CELLTABLE) { 
     // CellTable 
     CustomTableWidgetCellTableResource resource = GWT.create(CustomTableWidgetCellTableResource.class); 
     table = new CellTable<T>(10, resource); 
    } else { 
     // DataGrid 
     CustomTableWidgetDataGridResource resource = GWT.create(CustomTableWidgetDataGridResource.class); 
     table = new DataGrid<T>(10, resource); 
     table.setHeight("470px"); // Default height 
    }