DataBindingComplete被多次调用

我在c#中创建一个windows应用程序,

我有1个Datagridview,在我设置它的DataSource后它应该有3行。

我已将2个事件Habdlers附加到Datagrdview

void dgvProductList_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{ //this gets called 4 times } private void dgvProductList_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e) { //gets called 2 times. }

为什么会发生这种情况?我将如何解决这个问题?

提前致谢…

来自msdn在线DataBindingComplete事件

当数据源的内容更改或DataSourceDataMemberBindingContext属性的值更改时,将引发此事件。

例如,如果要分配Datasource,然后添加3行 – > 4次事件触发

我相信这取决于你实际设置DataSource的其他方法。 在我看来,你要么设置DataSource两次,要么两次调用DataBind,并且在每个DataBind上,你实际上在DataGridView中得到两行,因此总共有4行。

一些额外的代码可能有帮助

要尝试的一些事项:在代码中搜索DataBind(),DataSource()等,并确保仅在适当的位置调用它。

此外,假设数据绑定之间发生了一些变化,对DataBind进行两次调用并不一定是坏事……状态的某些变化……没有背景真的很难说。