對於Binding Data to Series (Chart Controls) see here!
概述最簡單的方法綁定你List<T>
到Chart
被簡單地設置列表爲DataSource
,並設置X和Y值的成員:
chart1.DataSource = MyList;
S1.XValueMember = "Dtm";
S1.YValueMembers = "LastPrice";
至於更新圖表使用DataBind方法:
chart1.DataBind();
現在你有兩個選擇:
要麼你知道當值的變化;那麼您可以簡單地在更改後添加呼叫。
但是,也許你不知道這些變化發生的時間,或者有許多演員都可能改變列表。
爲此,您可以添加DataBind
通話權到相關屬性的二傳手:
public class MyClass
{
int dtm;
double lastPrice = 0;
public static Chart chart_ { get; set; }
public int Dtm
{
get { return dtm; }
set { dtm = value; }
}
public double LastPrice
{
get { return lastPrice; }
set { lastPrice = value; chart_.DataBind(); }
}
// a constructor to make life a little easier:
public MyClass(int dt, double lpr)
{ Dtm = dt; LastPrice = lpr; }
}
對於這項工作的清單必須瞭解該圖表以保持更新。我已經添加了對該課程的參考。所以,之前添加/綁定點我們制定了一個圖表引用:
MyClass.chart_ = chart1; // set the static chart to update
// a few test data using a Random object R:
for (int i = 0; i < 15; i++)
MyList.Add(new MyClass(R.Next(100) + 1 , R.Next(100)/10f));
該基準可以static
,因爲所有的列表元素將更新相同的圖。
來源
2015-12-16 10:21:01
TaW
你可以使用'BindingList'用於WinForms或'ObservableCollection '用於WPF而不是'List '。 –
Dmitry
你能更具體嗎?或舉一個例子? – prre72
你在做什麼:Winforms? WPF? ASP? ...? __Always__相應地標記您的問題!另外[請參閱MSDN](https://msdn.microsoft.com/library/dd456766%28v=vs.100%29.aspx) – TaW