轉帖|使用教程|編輯:龔雪|2016-03-02 09:11:23.000|閱讀 430 次
概述:在上文中,我們討論了數據源是值集合和對象集合的時候,如何使用C1Chart進行數據綁定。接下來我們就接著之前的內容,在上個示例的基礎上,進行進一步的深入研究。本部分講述數據源是Ovservable集合的時候,如何進行數據綁定,以及如何動態綁定圖表序列。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
<ComponentOne Studio for WPF下載>
在上文中,我們討論了數據源是值集合和對象集合的時候,如何使用C1Chart進行數據綁定。接下來我們就接著之前的內容,在上個示例的基礎上,進行進一步的深入研究。本部分講述數據源是Ovservable集合的時候,如何進行數據綁定,以及如何動態綁定圖表序列。
WPF下有一個特殊的集合類ObservableCollection,它提供了例如添加,刪除或整個列表的刷新。如果以這個類作為圖表的數據源,我們在數據源里做出的變化,可以直接影響到C1Chart。步驟:
我們在頁面里添加System.Collections.ObjectModel的namespace,它包含ObservableCollection。同時,也要添加C1.WPF.C1Chart。
C#代碼:
using System.Collections.ObjectModel; using C1.WPF.C1Chart;
聲明Point類型的ObservableCollection:
C#代碼:
ObservableCollection<Point> points = new ObservableCollection<Point>();
清除所有的圖表數據(如果存在的話),而且填充points集合的點。
C#代碼:
//Clear chart data chart.Data.Children.Clear(); //Create dummy data points.Add(new Point(0, 20)); points.Add(new Point(1, 22)); points.Add(new Point(2, 19)); points.Add(new Point(3, 24)); points.Add(new Point(4, 29)); points.Add(new Point(5, 7)); points.Add(new Point(6, 12)); points.Add(new Point(7, 15));
創建XYDataSeries并且綁定到這個集合上,然后添加到圖表。
C#代碼:
//Setup C1Chart data series XYDataSeries ds = new XYDataSeries(); ds.Label = "Series 1"; //Bind data series to collection ds.ItemsSource = points; //Important to set binding when using ItemsSource ds.ValueBinding = new Binding("Y"); ds.XValueBinding = new Binding("X"); //Add data series to chart chart.Data.Children.Add(ds);
如上代碼所示,您可以直接的綁定結合點到data series的ItemSource。很重要的,需要定義ValueBinding(Y)和XValueBinding到Point對象的X,Y屬性。如果您所需要的對象不是Point對象,而是自定義的對象,那么您需要綁定data series值到你指定的屬性。然后添加data series到chart的Data集合。通過這種方式,您可以很容易的添加多個data series。
上述代碼的示例:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網