2015-02-25 3 views
0

Я пытаюсь создать привязку данных для диаграммы в Windows Forms. Это мой код:Таблица форм и привязка Windows Forms

ch.Series["Dep"].Points.DataBindXY(data, "Date", data, "Value"); 
ch.DataBind(); 

Данные относятся к типу DataBinding. Проблема в том, что всякий раз, когда я изменяю источник данных:

data.DataSource = ... (list) 

Диаграмма не обновляется. На самом деле этот же подход отлично работает с такими виджетами, как comboboxes (как только я обновляю DataBinding.DataSource, виджет обновляется).

Я даже попробовал позвонить Update() или Refresh() без каких-либо результатов. Что мне не хватает?

ответ

1

Вам вообще не нужно вызывать DataBind(). DataBindXY - это то, что вы хотите сделать, когда вы впервые привязываете его, и после обновления источника данных. Например, это работает:

public partial class Form1 : Form 
    { 
     List<int> exes = new List<int> { 1, 3, 7, 9 }; 
     List<int> whys = new List<int> { 10, 20, 30, 40 }; 

     public Form1() 
     { 
      InitializeComponent(); 
      chart1.Series[0].Points.DataBindXY(exes, whys); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      exes.Add(13); 
      whys.Add(50); 
      chart1.Series[0].Points.DataBindXY(exes, whys);    
     } 
    ... 
Смежные вопросы