Spread Windows Forms 6.0 Product Documentation
Binding the Chart Control
Support Options
Spread Windows Forms 6.0 Product Documentation > Developer's Guide > Working with the Chart Control > Creating Charts > Using the Chart Control > Binding the Chart Control

Glossary Item Box

A series contains three parts (category, series name, and data). You can bind each part to an instance of the series data field. The entire chart control can not be bound; however, you can use a cell range or a formula to put data in the chart.

Using Code

You can add values to Spread with an array or dataset and then use a cell range to put those values in a chart control. This example uses an array to put data in the control.

Example

C# Copy Code
object[,] values = { { "lg1", "lg2", "lg3" }, { "tt1", 2.0, 5.0 }, {"tt2",4.0,5.0 } };
 
fpSpread1.Sheets[0].SetArray(0, 0, values);
 
FarPoint.Win.Spread.Model.CellRange cellRange = new FarPoint.Win.Spread.Model.CellRange(0,0,values.GetLength(0),values.GetLength(1));
 
fpSpread1.Sheets[0].AddChart(cellRange, typeof(FarPoint.Win.Chart.BarSeries), 400, 400, 0, 0); 

private void button1_Click(object sender, EventArgs e)
 
{
 
FarPoint.Win.Chart.BarSeries series = (FarPoint.Win.Chart.BarSeries)fpSpread1.Sheets[0].Charts[0].Model.PlotAreas[0].Series[0];
 
FarPoint.Win.Spread.Chart.SeriesDataField data = (FarPoint.Win.Spread.Chart.SeriesDataField)series.Values.DataSource;
 
data.Formula = "Sheet1!$B$2:$E$1";
 
}
 
VB Copy Code
Dim values As Object(,) = {{"lg1", "lg2", "lg3"}, {"tt1", 2.0R, 5.0R}, {"tt2", 4.0R, 5.0R}
 
FpSpread1.Sheets(0).SetArray(0, 0, values)
 
Dim cellRange As New FarPoint.Win.Spread.Model.CellRange(0, 0, values.GetLength(0), values.GetLength(1))
 
FpSpread1.Sheets(0).AddChart(cellRange, GetType(FarPoint.Win.Chart.BarSeries), 400, 400, 0, 0)
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 
Dim series As FarPoint.Win.Chart.BarSeries = DirectCast(FpSpread1.Sheets(0).Charts(0).Model.PlotAreas(0).Series(0), FarPoint.Win.Chart.BarSeries)
 
Dim data As FarPoint.Win.Spread.Chart.SeriesDataField = DirectCast(series.Values.DataSource, FarPoint.Win.Spread.Chart.SeriesDataField)
 
data.Formula = "Sheet1!$B$2:$E$1"
 
End Sub
 

Using Code

You can add values to Spread with an array or dataset and then use a cell range to put those values in a chart control. This example uses a data table to put data in the control.

Example

C# Copy Code
DataTable dt = new DataTable("Test");
 
DataRow dr = default(DataRow);
 
dt.Columns.Add("Series1");
 
dt.Columns.Add("Series2");
 
dr = dt.NewRow();
 
dr[0] = 1;
 
dr[1] = 4;
 
dt.Rows.Add(dr);
 
dr = dt.NewRow();
 
dr[0] = 2;
 
dr[1] = 5;
 
dr = dt.NewRow();
 
dt.Rows.Add(dr);
 
dr[0] = 3;
 
dr[1] = 6;
 
dt.Rows.Add(dr);
 
fpSpread1.DataSource = dt;
 
FarPoint.Win.Spread.Model.CellRange cellRange = new FarPoint.Win.Spread.Model.CellRange(0,0,2,2);
 
fpSpread1.Sheets[0].AddChart(cellRange, typeof(FarPoint.Win.Chart.BarSeries), 400,400,0,0);
 
VB Copy Code
Dim dt As New DataTable("Test")
 
Dim dr As DataRow
 
dt.Columns.Add("Series1")
 
dt.Columns.Add("Series2")
 
dr = dt.NewRow()
 
dr(0) = 1
 
dr(1) = 4
 
dt.Rows.Add(dr)
 
dr = dt.NewRow()
 
dr(0) = 2
 
dr(1) = 5
 
dt.Rows.Add(dr)
 
dr = dt.NewRow()
 
dr(0) = 3
 
dr(1) = 6
 
dt.Rows.Add(dr)
 
FpSpread1.DataSource = dt
 
Dim cellRange As New FarPoint.Win.Spread.Model.CellRange(0, 0, 2, 2)
 
FpSpread1.Sheets(0).AddChart(cellRange, GetType(FarPoint.Win.Chart.BarSeries), 400, 400, 0, 0)
 

Return to Using the Chart Control.

© 2002-2012 ComponentOne, a division of GrapeCity. All Rights Reserved.