SideBySideGanttSeriesView Class
Represents a series view of the Side-by-Side Gantt type.
Namespace: DevExpress.XtraCharts
Assembly: DevExpress.XtraCharts.v24.2.dll
Declaration
public class SideBySideGanttSeriesView :
GanttSeriesView,
ISideBySideBarSeriesView,
IBarSeriesView
Remarks
The SideBySideGanttSeriesView class provides the functionality of a series view for the side-by-side Gantt type within a chart control.
The SideBySideGanttSeriesView class inherits properties and methods from the base GanttSeriesView class which defines the common settings of Gantt series views.
Note that a particular view type can be defined for a series via its SeriesBase.View property.
For more information on series views of the side-by-side Gantt type please see the Side-by-Side Gantt Chart topic.
Example
The following example demonstrates how to create a ChartControl with two series of the SideBySideGanttSeriesView
type, and add this chart to a form at runtime. Before proceeding with this example, first create a Windows Forms Application in Visual Studio, and include all necessary assemblies to the References list of your project.
Then, add the following code to the Form.Load event handler.
using System;
using System.Drawing;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...
private void Form1_Load(object sender, EventArgs e) {
// Create a new chart.
ChartControl ganttChart = new ChartControl();
// Create two Gantt series.
Series series1 = new Series("Estimation", ViewType.SideBySideGantt);
Series series2 = new Series("Implementation", ViewType.SideBySideGantt);
// Specify the date-time value scale type,
// because it is qualitative by default.
series1.ValueScaleType = ScaleType.DateTime;
series2.ValueScaleType = ScaleType.DateTime;
// Add points to them.
series1.Points.Add(new SeriesPoint("Task 1", new DateTime[] {
new DateTime(2006, 8, 16), new DateTime(2006, 8, 31) }));
series1.Points.Add(new SeriesPoint("Task 2", new DateTime[] {
new DateTime(2006, 8, 31), new DateTime(2006, 9, 15) }));
series1.Points.Add(new SeriesPoint("Task 3", new DateTime[] {
new DateTime(2006, 9, 15), new DateTime(2006, 9, 30) }));
series1.Points.Add(new SeriesPoint("Task 4", new DateTime[] {
new DateTime(2006, 9, 30), new DateTime(2006, 10, 15) }));
series2.Points.Add(new SeriesPoint("Task 1", new DateTime[] {
new DateTime(2006, 8, 16), new DateTime(2006, 9, 5) }));
series2.Points.Add(new SeriesPoint("Task 2", new DateTime[] {
new DateTime(2006, 9, 5), new DateTime(2006, 9, 22) }));
series2.Points.Add(new SeriesPoint("Task 3", new DateTime[] {
new DateTime(2006, 9, 22), new DateTime(2006, 10, 10) }));
series2.Points.Add(new SeriesPoint("Task 4", new DateTime[] {
new DateTime(2006, 10, 10), new DateTime(2006, 10, 23) }));
// Add both series to the chart.
ganttChart.Series.AddRange(new Series[] { series1, series2});
// Access the view-type-specific options of the second series.
SideBySideGanttSeriesView myView2 = (SideBySideGanttSeriesView)series2.View;
myView2.MaxValueMarker.Visible = true;
myView2.MaxValueMarker.Kind = MarkerKind.Star;
myView2.MaxValueMarker.StarPointCount = 5;
myView2.MaxValueMarker.Size = 10;
myView2.MinValueMarker.Visible = true;
myView2.MinValueMarker.Kind = MarkerKind.Circle;
myView2.MinValueMarker.Size = 10;
myView2.BarWidth = 0.5;
// Customize the chart (if necessary).
GanttDiagram myDiagram = (GanttDiagram)ganttChart.Diagram;
myDiagram.AxisX.Title.Visible = true;
myDiagram.AxisX.Title.Text = "Tasks";
myDiagram.AxisY.Interlaced = true;
myDiagram.AxisY.GridSpacing = 10;
myDiagram.AxisY.Label.Angle = -30;
myDiagram.AxisY.DateTimeOptions.Format = DateTimeFormat.MonthAndDay;
// Customize the legend (if necessary).
ganttChart.Legend.AlignmentHorizontal = LegendAlignmentHorizontal.Right;
ganttChart.Legend.AlignmentVertical = LegendAlignmentVertical.TopOutside;
ganttChart.Legend.Direction = LegendDirection.LeftToRight;
// Add a constant line.
ConstantLine deadline = new ConstantLine("Deadline", new DateTime(2006, 10, 15));
deadline.ShowInLegend = false;
deadline.Title.Alignment = ConstantLineTitleAlignment.Far;
deadline.Color = Color.Red;
myDiagram.AxisY.ConstantLines.Add(deadline);
// Add a title to the chart (if necessary).
ganttChart.Titles.Add(new ChartTitle());
ganttChart.Titles[0].Text = "A Side-by-Side Gantt Chart";
// Add the chart to the form.
ganttChart.Dock = DockStyle.Fill;
this.Controls.Add(ganttChart);
}