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

10. Column and row spanning

Attributes RowSpan, Span and Merge

Source: 10-Span.xml
  • Span

    attribute specifies how many columns in the row will the cell span. The row must have set Spanned='1', otherwise the Span attribute is ignored.
  • If you permit column moving by users in spanned grid, it is recommended to define column groups by Group attribute to not let users to break down the spanned cells.
  • Merge

    attribute specifies the cell values which will be shown in the spanned cell.
    By default only the first column value is shown in the spanned cell. The Merge contains a list of column names to display their values. The merged cell values can be displayed in any order.
    By MergeEdit attribute is possible to specify the one editable cell from the Merge list.
    By MergeFormat is possible to define exact structure how the cell values will be merged and displayed.
    By MergeEditFormat specifies exact structure for editing, when more merged cells are editable.
    For complex MergeFormat can be defined API event OnMergeChanged for custom parsing edited value instead of default one for given MergeEditFormat.
  • RowSpan

    attribute specifies how many rows in the column will the cell span. The column must have set Spanned='1', otherwise the RowSpan attribute is ignored. In tree the RowSpan is a count of rows on the same level as this row. All their children are spanned automatically. The last row's children are spanned within range when added 0.5 to the RowSpan, e.g. RowSpan='3.5' means span for three row and also the last row's children.
  • Custom spanned section

    can be defined by LeftHtml, MidHtml and RightHtml. It spans all columns in the section and shows here the HTML code.
  • Header

    can be spanned and row spanned like any other rows.
    Every grid contains one main header that is defined by root tag <Header>. You can define more headers by placing next <Header> tags into <Head> section.
    To control position of the main header inside the other headers place it also to <Head> tag as <Header id='Header'/>.
  • If used

    column paging

    (<Cfg ColPaging/> ), the cells can be spanned only inside the column page.
    You can set <Cfg ColPagingFixed='0'/> to not page fixed rows and let them span through the whole body.
  • To center text inside horizontally spanned cell regardless on scrolling set cell attribute Align='Scroll'.