【发布时间】:2009-12-04 11:45:08
【问题描述】:
我试图弄清楚与BindingSource 的数据绑定应该如何工作
我希望在更新列表时用List<> 的内容填充DataGridView。
当我检查调试器时,我可以看到 List 增长并验证它正在被填充。我认为BindingSource 会在List 更改时触发一个事件。但是没有一个可用的被解雇。当基础列表发生更改时,我如何收到通知?
我按照说明操作并拥有以下测试代码:
Data d;
BindingSource bs;
public Form1()
{
InitializeComponent();
bs = new BindingSource();
d = new Data();
}
private void Form1_Load(object sender, EventArgs e)
{
bs.DataSourceChanged += new EventHandler(bs_DataSourceChanged);
bs.ListChanged += new ListChangedEventHandler(bs_ListChanged);
bs.DataMemberChanged += new EventHandler(bs_DataMemberChanged);
bs.CurrentChanged += new EventHandler(bs_CurrentChanged);
bs.CurrentItemChanged += new EventHandler(bs_CurrentItemChanged);
bs.DataSource = d.list;
dataGridView1.DataSource = bs;
}
// ... all the handling methods caught with a break point in VS.
private void button1_Click(object sender, EventArgs e)
{
d.addOneItem();
}
【问题讨论】:
标签: c# .net data-binding bindingsource