Reputation: 60871
i am using the ms chart control to make funny looking charts on a winform. what is the advantage of using a databinding instead of say something like this:
using System.Windows.Forms.DataVisualization.Charting;
using System.Data;
using System.Data.OleDb;
...
// Access database
System.Windows.Forms.DataVisualization.Charting.Utilities.SampleMain.MainForm mainForm = (System.Windows.Forms.DataVisualization.Charting.Utilities.SampleMain.MainForm)this.ParentForm;
string fileNameString = mainForm.applicationPath + "\\data\\chartdata.mdb";
// Initialize a connection string
string myConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileNameString;
// Define the database query
string mySelectQuery="SELECT Name, Sales FROM REPS;";
// Create a database connection object using the connection string
OleDbConnection myConnection = new OleDbConnection(myConnectionString);
// Create a database command on the connection using query
OleDbCommand myCommand = new OleDbCommand(mySelectQuery, myConnection);
// Open the connection
myCommand.Connection.Open();
// Create a database reader
OleDbDataReader myReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
// Since the reader implements and IEnumerable, pass the reader directly into
// the DataBindTable method with the name of the Column to be used as the XValue
Chart1.DataBindTable(myReader, "Name");
// Close the reader and the connection
myReader.Close();
myConnection.Close();
...
Upvotes: 0
Views: 933
Reputation: 833
Doing data binding with the MS chat control object instead of manually programming is for consistency and performance.
http://msdn.microsoft.com/en-us/library/bb613546.aspx
If your application needs to be high performance, i would suggest binding the component with the data source if possible.
Upvotes: 1