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

9. Run join and drag

Joining and selecting run boxes and manipulating them together

  • See documentation for Gantt Run.
  • The run boxes can be moved inside and outside its cell, copied, resized, deleted, created, disabled, locked and edited / changed.
    The creating and resizing is done always only for one box. Although they can behave differently if the box or other boxes are joined or not.
    The other actions can be done for one box, for more joined boxes, for more selected boxes and for more boxes in the same group.
  • Joined boxes

    Boxes can be joined


    , if there is no empty box between them and

    by Nbsp

    type box between them.
    Both the join types can be controlled differently, but note the direct join is more tight join than the Nbsp join, so some actions permitted for direct join are automatically applicable fo Nbsp join, but not vice versa.
    Attributes: GanttRun, item 1. Type, keywords Nbsp and Empty, GanttRunMove, flags Single, Next, Prev, Nbsp, Selected, Group, GanttRunResize, flag Nbsp, GanttRunAdjust, flags Append, AppendNbsp, Nbsp, Single, ResizeNbsp, GanttRunJoined, GanttRunJoinedNbsp, GanttRunJoinedHover, GanttRunNbspHover.
    Actions: JoinSelectedGanttRun, SplitJoinedGanttRun, JoinAdjacentGanttRun and SplitAdjacentGanttRun.
    GanttMenu items: JoinGanttRunSelected, SplitGanttRunJoined, JoinGanttRunAdjacent, SplitGanttRunAdjacent.
  • Selected boxes

    There can be one or more boxes in grid selected and handled together.
    The boxes can be selected individually (by default by double click) or by dragging rectangle (by default by right mouse button, in this example by shift + left button).
    The selected boxes can be handled all together or only all selected boxes from one (actual) row.
    Attributes: GanttRun, item 7. State, 3. bit (value 4) or keyword Selected, GanttRunSelect, GanttRunClearSelected, GanttRunJoined, 3. bit (value 4), GanttRunJoinedNbsp, 3. bit (value 4), GanttRunMove, flags Selected, SelectedSingle, Clear, Entire.
    Actions: SelectGanttRun, SelectGanttRunRect, DeselectGanttRunAll, DeleteGanttRunSelected, ChooseGanttRunSelectedType, JoinSelectedGanttRun
    GanttMenu items: SelectGanttRunPart, SelectGanttRun, UnselectGanttRun, JoinGanttRunSelected, DelGanttRunSelected, ChooseGanttRunSelectedType.
    API: OnGanttRunSelect, SelectGanttRunBox, SelectGanttRunRect, GetGanttRunSelectedBoxes, GetGanttRunSelectedCount.
  • Box groups

    Every box can belong to one group of boxes according to its Group attribute value. If the Group attribute is empty, the box does not belong to any group.
    The boxes in the same group can be handled all together or only boxes in one (selected) row.
    Attributes: GanttRun, item 6. Group, GanttRunGroupHover, GanttRunMove, flags Group, GroupSingle, Entire.
    Actions: DeleteGanttGroup, DeletedGanttGroupAll, ChooseGanttRunGroupType, ChooseGanttRunGroupAllType.
    GanttMenu items: DelGanttRunGroup, DelGanttRunGroupAll, ChooseGanttRunGroupType, ChooseGanttRunGroupAllType.