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. Calendars - excluded dates

Excluding any dates from chart and Gantt calculation

  • Available calendars in chart are defined in root


    tag, by individual


    Every calendar has defined its Name and all dates to exclude in Exclude tag.
    The calendars are accessible also by API by Calendars array.
  • The


    of Exclude or GanttExclude is: rep1#date1a~date1b;rep2#date2a~date2b;...
    The repeater can be one of GanttDataUnits. If it is missing, the date is not repeated. The date is repeated also before it.
    For example: GanttExclude = 'w#1/5/2008~1/7/2008; d#00:00~9:00; d#13:00~14:00; d#18:00~24:00' shows only hours 8:00 - 13:00 and 14:00 - 18:00 and only workdays.
  • The excluded dates are completely ignored in Gantt calculation, they behave like there are no such dates at all.
  • If the excluded dates are shown, they are colored in different color and usually do not permit to place objects here, see GanttCheckExclude. The excluded dates are color before background, so by GanttBackground is possible to change their color.
  • GanttCheckExclude

    attribute controls if it will be possible to place some objects to excluded dates.
    Remember, even if the object contains excluded dates, they are still excluded from all calculations, like dependency or duration.
    The checking affects also editing Gantt source columns by a user.
    0 - permits placing, 1 - restricts placing, 2 - asks user.
  • Global calendar

    is defined by


    tag. It affects all rows without local calendar.
    The GanttExclude can be set to the name of calendar defined in Calendars tag or directly to exclude string.
    The excluded dates by global calendar can be shown or hidden in the chart, according to


    Dynamically can be the GanttHideExclude changed by API method SetHideExclude.
  • Local calendars

    can be defined individually for every row by


    The GanttCalendar can be set for the whole column to another grid column that contains calendar names or direct exclude strings.
    Or can be set individually for every row to the calendar name, exclude string or the column containing this information. In this case the Gantt column must have set the GanttCalendar attribute to some value too.
  • ShowGanttCalendar API method presets cell Defaults list to the list of calendar to let users to choose and assign a calendar to the local or global calendar.
    It can be used in OnClickSideDefaults event.
  • EditGanttCalendars API method shows the global dialog to let users to edit, add and delete available calendars.
  • If the calendar changes, the bars in rows must be recalculated. It is possible to recalculate bar duration according to its end or its end according to the duration.
    For main bar it is chosen by GanttChangeExclude attribute. The Run bars change depends if the bars are defined by width or by end.
  • The calendar be changed and updated also by API method ChangeExclude.