News in version
TreeGrid Gantt chart SpreadSheet Examples Documentation Download Development Licensing Prices References Contacts Buy Try it free
Live examples
Grids and tree grids

Complex grid - the first one Complex grid - RTL mode Large table with paging Large table without paging Multiline & images - books Positions and spanning Photo album - images PivotTable - 2D grouping Schools - list and ratings File and directory browser Extended JavaScript API Sharing & synchronization 1 000 000 rows, 1 000 cols


Microsoft Excel sheet TreeGrid sheet TreeGrid sheet - RTL mode

Gantt and bar charts

Gantt & Network chart Gantt & Network chart - RTL Simple Gantt chart Big Gantt chart - 1000 rows Gantt chart tree by grouping Resources usage chart Run chart - bar chart Grouping bars - run groups Joined boxes and containers Line chart and XY charts

Live grid tutorials
Basic (rows and columns)

1. Basic grid 2. Rows 3. Columns 4. Default rows, columns 5. Rows manipulation 6. Rows identification

Cells (types, formats, edit)

1. Edits - inputs & multiline 2. Combos & checkboxes 3. Html, links, imgs, buttons 4. Space buttons & tabs 5. Permissions & validation 6. Cell CSS style & color 7. Conditional formatting 8. Custom controls & editing 9. Events & custom dialogs 10. Column & row spanning 11. Dynamic cell spanning

Tree (rows, columns, groups)

1. Row tree 2. Column tree 3. Grouping rows to tree

Sorting rows

1. Sorting rows

Filter and search

1. Filtering rows 2. Filtering in tree 3. Search & advanced filters


1. Dragging rows 2. Dragging between grids 3. Dragging external tag

Paging (rows, tree, columns)

1. Client root paging 2. Client child paging 3. Client column paging 4. All client paging 5. Adding pages dynamically 6. Server root paging 7. Server child paging 8. All server paging

Master and detail

1. Nested detail simple 2. Nested detail tables 3. Master detail simple 4. Master detail tables 5. Master detail more tables 6. Master detail in tree 7. Master detail trees 8. Nested detail nested deep 9. Nested detail server paging

Calculations (cell formulas)

1. Calculated columns 2. Calculated rows 3. Calculation order 4. Calculated rows in tree 5. Calculation order in tree 6. Calculated attributes 7. Editable calculated cells

Live Sheet tutorials
Sheet features

1. Row and column Index 2. Auto size (auto adding pages) 3. Row&column manipulation 4. Cell manipulation 5. Cell style 6. Editable formulas (ids) 7. Editable formulas (indexes) 8. Cell format 9. Outside edit 10. Auto tree

Live Gantt tutorials
Main bar (Gantt chart)

1. Main bar 2. Discrete main bar 3. Main bar plans 4. Summary tasks

Run bar (Bar chart)

1. Run array definition 2. Run JSON definition 3. Run summary definition 4. Run drag 5. Run groups & API 6. Run bar as task 7. Run box as task 8. Network diagram 9. Run join and drag 10. Run external drag 11. 2 fixed levels containers

Flags and points

1. Flags 2. Points

Display, zoom, paging

1. Header & background 2. Zoom 3. Paging 4. Synchronizing more Gantts

Dependencies & scheduling

1. Constraints 2. Dependencies 3. Schedule tasks 4. Critical path


1. Calendars exclude


1. Resources 2. Availability

1. Basic grid

Basic grid with rows and columns

  • TreeGrid XML

    • Every grid XML is defined inside

      <Grid> ... <Grid>

      tag. It is the only possible root tag in TreeGrid XML. See TreeGrid data formats
    • The simplest empty grid can be created as <Grid> <Body> <B/> </Body> </Grid> - no columns and no rows (one empty page).
    • TreeGrid base configuration is defined in


    • Instead of XML can be used also JSON format, the tag and attribute names are the same as in XML format.
  • Rows

    • TreeGrid is row based grid. Data are defined in rows. Many features like sort, group and filter are available for rows only, not for columns.
    • The variable (body) rows are defined as


      tags inside

      <Body><B> ... </B></Body>

    • The fixed rows are defined as


      tags inside

      <Head> ... </Head>


      <Foot> ... </Foot>

    • For more information see Row types tutorial and Row basics documentation.
  • Columns

    • The column defines name, position and width of all the cells in the column. The column optionally defines also cell attributes like Type, Format, CanEdit, etc. for all the cells in the column.
    • The variable (middle) columns are defined by


      tag inside

      <Cols> </Cols>

    • The fixed columns are defined by


      tag inside

      <LeftCols> </LeftCols>


      <RightCols> </RightCols>

    • All three sections can be horizontally scrolled. By default only the middle section is scrollable, the left and right sections are fixed and always visible.
    • Column can be moved (dragged) inside its section and also to another section. Column can be shown / hidden by users in columns menu (icon on toolbar).
    • For more information see Columns and sections tutorial and Column basics documentation.
  • Cells

    • TreeGrid data in cells are defined in rows, not in columns.
    • The cell values are defined in <I> tag with attribute named as the column Name. For example <I Col1='10' Col2='20'/>.
    • All cell attributes (except for column size and position like Width) can be defined for the whole column (in <C> tag, e.g. <C Name='Col1' Type='Int' Format='0.00'/>) or for individual cell (in <I> tag as column name+attribute name, e.g. <I Col1Type='Int' Col1Format='0.00' Col1='10'/>).
    • For more information see Cells tutorials and Cell basics documentation.
  • Predefined items

    There are four predefined items in grid: Header, Panel, Toolbar and Pager. All of them can be hidden, moved, redefined or created more times. All the default definitions are in file Grid/Defaults.xml.
    • Header

      - fixed row <Header id='Header'/> as main header containing column captions. It is defined by


      tag placed directly in <Grid> tag.
      Hide it by <Header Visible='0'/>. Define the column captions as normal row cells, like <Header Col1='Column 1'/>. Change the main header position by placing into <Head> or <Foot> section as <Header id='Header'/>.
      For more information see Rows tutorial.
    • Toolbar

      - solid row <Toolbar id='Toolbar'/> as main toolbar containing basic TreeGrid buttons. It is defined by


      tag placed directly in <Grid> tag.
      Hide it by <Toolbar Visible='0'/>. Hide the default icons by setting their names to 0 like <Toolbar Print='0' ExpandAll='0'/>. Move the toolbar by setting its Space attribute.
      Add new icons or other cells to the toolbar by redefining Cells attribute. Use default Cells definition in Grid/Defaults.xml and extend it (see next tutorial).
      See Default toolbar documentation.
    • Panel

      - left column <Panel Name='Panel' Type='Panel'/> as row left panel containing control buttons for individual rows. It is defined by


      tag placed directly in <Grid> tag.
      Hide it by <Panel Visible='0'/>. Hide / show the Panel button by setting their name to 0/1 like <Panel Select='0' Copy='1'/>. Change the panel position by placing into <LeftCols>, <Cols> or <RightCols> tag as <C Name='Panel'/>.
      See Panel Type documentation.
    • Pager

      - side vertical pager <Pager Name='Pager'/> with root pages names. Shown only in paged grid (set <Cfg Paging/> attribute). It is defined by


      tag placed directly in <Grid> tag.
      Hide it by <Pager Visible='0'/>. Set its width by Width attribute. Move it to left by Left='1'.
      See Pager documentation.