2009-04-19 26 views

risposta

29

HTMLTable è una classe astratta. FlexTable estende questa classe e anche la griglia. HTMLTable non è quindi mai usato direttamente, ma useresti FlexTable o Grid. La domanda è probabilmente quando usare FlexTable? e quando usare Grid?

La differenza tra queste classi è che una griglia ha sempre lo stesso numero di righe e/o colonne mentre una FlexTable può avere righe diverse per colonna e colonne diverse per riga (ciò è reso possibile dalle proprietà html rowspan e colspan).

Così quando hai bisogno di righe o colonne flessibili puoi usare FlexTable e altrimenti Grid.

Tuttavia, FlexTable è estremamente lento in Internet Explorer, a causa dei metodi DOM lenti utilizzati per creare una tabella. Pertanto, evitare FlexTable se è possibile o solo usarlo, creare un layout semplice (anche se in tal caso DockPanel potrebbe essere un po 'più facile da usare).

+3

Ma poi di nuovo, tutto è estremamente lenta in Internet Explorer :) – slugmandrew

+0

FWIW ho provato il test delle prestazioni di cui qui http://whatwouldnickdo.com/wordpress/401/performance-grid-vs -flessibile/(il test effettivo è qui: http://whatwouldnickdo.com/gridvflex/GridVFlex.html) Su Windows 7 - IE 11, Firefox 28 e Chrome 34. C'erano solo piccole differenze nelle prestazioni, con FlexTable di solito essere più veloce di "Grid". Chrome ha battuto FF e IE di un fattore 2 la maggior parte del tempo. –

0

Non è possibile confrontare in questo modo.

Come da Docs

HTMLTable contains the common table algorithms for Grid and FlexTable. 

Così Griglia o Flextable estende HTMLTable.

E

Un Flexible table che crea le cellule su richiesta. Può essere frastagliato (ovvero, ogni riga può contenere un numero diverso di celle) e le singole celle possono essere impostate su più righe o colonne.

Ora possiamo avere una domanda Grid or Flextable ???

Ecco la Performance difference between grid and Flextable.