以编程方式将行添加到数据绑定的DataGridView中?

我有一个问题,我似乎无法解决它。 我以为有人在这里可以提供帮助。

我有一个具有客户DataGridView的表单。 现在,我想向这个DataGridView添加几个客户,而不是实际将它们添加到数据库中。 这是因为客户端必须能够创建客户端列表,并在完成后立即添加所有客户端。

我试过这个:

string[] array = {"Microsoft", "Redmond", "Something"} dataGridView.Rows.Add (array); 

现在这不能完成,因为我得到一个exception,说你的行不能以编程方式将行添加到数据绑定的DataGridView

现在我还读到这可以通过使用表适配器插入行而不是直接添加它来解决。 一个DGV。 但这也是不可能的,因为我在DGV中使用自定义标头,因为现有数据是通过JOIN获取的,所以如果我通过TableAdapter添加它,我会得到一个与数据库表模式不匹配的exception。

现在我真的迷路了……任何人都知道这个问题的一个(中途)优雅的解决方案?

谢谢

将您的DGV绑定到BindingList ,其中YourObject可以是一个具有反映数据库模式的属性的简单类。 最初从数据库填充BindingList ,DGV将自动将YourObject实例添加到列表中。 当您准备提交更改时,请从BindingList手动执行此操作。

为了显示这些行,只需在数据绑定之前执行UNION(类似)操作。 即获取您的记录列表,添加特殊记录,然后添加数据绑定。

更新也需要一些特殊的行动。 但由于完全缺乏有关数据结构的详细信息,因此无法说出什么。