Release date: February 3, 2013 (3.2.246)
See also
Gantt

DayPilot Scheduler supports Gantt mode:
- You can enable it using ViewType="Gantt".
- In the Gantt mode, it automaticallz creates one row per event from the events supplied in DataSource.
- DataResourceField is not required.
Demo
Example
<DayPilot:DayPilotScheduler ID="DayPilotScheduler1" runat="server"
DataStartField="start"
DataEndField="end"
DataTextField="name"
DataValueField="id"
ViewType="Gantt"
>
</DayPilot:DayPilotScheduler>
Multiple Row Header Columns

You can display multiple columns in the row headers.
The columns can be displayed in both the Resources view and the Gantt view.
Demo
Example:
<DayPilot:DayPilotScheduler ID="DayPilotScheduler1" runat="server"
DataStartField="start"
DataEndField="end"
DataTextField="name"
DataValueField="id"
DataResourceField="resource"
>
<HeaderColumns>
<DayPilot:RowHeaderColumn Title="Location" Width="100" />
<DayPilot:RowHeaderColumn Title="Details" Width="60" />
</HeaderColumns>
</DayPilot:DayPilotScheduler>
Header Resizing (Drag&Drop)

The header columns can be resized by dragging the separator line.
After release the mouse button, RowHeaderColumnWidthChanged event will be fired. The column widths are available as a single string (comma-separated values) in RowHeaderColumnWidths property. You can save the new value in the database and use it during the initialization.
Example
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DayPilotScheduler1.RowHeaderColumnWidths = "150, 100"; // load it from database
DayPilotScheduler1.DataSource = getData();
DataBind();
}
}
// ...
protected void DayPilotScheduler1_RowHeaderColumnWidthChanged(object sender, HeaderColumnWidthChangedEventArgs e)
{
// save the new value
string widths = DayPilotScheduler1.RowHeaderColumnWidths;
// reload events
DayPilotScheduler1.DataSource = getData();
DataBind();
}Resource Header Customization (BeforeResHeaderRender Event)

The BeforeResHeaderRender event allows to customize each header row, including the additional columns. BeforeResHeaderRender is called one for each resource/row.
This is particulary useful in the Gantt mode.
Demo
Example
protected void DayPilotScheduler1_BeforeResHeaderRender(object sender, BeforeHeaderRenderEventArgs e)
{
DateTime start = (DateTime) e.DataItem["start"];
DateTime end = (DateTime) e.DataItem["end"];
e.InnerHTML = String.Format("<div style='padding: 0px 4px 0px 2px;'>{0}</div>", e.Name);
e.Columns[0].InnerHTML = String.Format("<div style='text-align:right; padding: 0px 4px 0px 2px;'>{0}</div>", end - start);
}Implemented
-
[Scheduler]
Gantt view implemented.
(build 231)
-
[Scheduler]
BeforeResHeaderRender implemented.
(build 232)
-
[Scheduler]
HeaderColumns implemented.
(build 233)
-
[Scheduler]
HeaderColumnWidthChanged event implemented.
(build 234)
-
Access to DataItem fields/properties improved.
(build 235)