ComponentOne Chart for WPF and Silverlight
Chart for WPF and Silverlight / Chart Features / Data Binding / Binding to a DataTable from DataSet
In This Topic
    Binding to a DataTable from DataSet
    In This Topic

    Here is sample code that creates the chart from the data table. 

    Visual Basic
    Copy Code
    Private _dataSet As DataSet
    Private Sub Window_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' create connection and fill data set
        Dim mdbFile As String = "c:\db\nwind.mdb"
        Dim connString As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", mdbFile)
        Dim conn As New OleDbConnection(connString)
        Dim adapter As New OleDbDataAdapter("SELECT TOP 10 ProductName, UnitPrice FROM Products " & vbCr & vbLf & " ORDER BY UnitPrice;", conn)
        _dataSet = New DataSet()
        adapter.Fill(_dataSet, "Products")
        ' set data table rows as the source for chart data
        c1Chart1.Data.ItemsSource = _dataSet.Tables("Products").Rows
    End Sub
    

     

    C#
    Copy Code
    DataSet _dataSet;
    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
      // create connection and fill data set
      string mdbFile = @"c:\db\nwind.mdb";
      string connString = string.Format(
        "Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}",
        mdbFile);
      OleDbConnection conn = new OleDbConnection(connString);
      OleDbDataAdapter adapter = new OleDbDataAdapter(
         @"SELECT TOP 10 ProductName, UnitPrice FROM Products
           ORDER BY UnitPrice;", conn);
      _dataSet = new DataSet();
      adapter.Fill(_dataSet, "Products");
      // set data table rows as the source for chart data
      c1Chart1.Data.ItemsSource = _dataSet.Tables["Products"].Rows;
    } 
    

     

    In XAML

    XAML
    Copy Code
    <c1chart:C1Chart.Data>
      <c1chart:ChartData ItemNameBinding="{Binding Path=[ProductName]}">
        <c1chart:DataSeries ValueBinding="{Binding Path=[UnitPrice]}"/>
      </c1chart:ChartData>
    </c1chart:C1Chart.Data> 
    

     

     

     

    See Also