添加新的DataRow不会向DataGridView添加行

时间:2011-08-25 01:48:46

标签: c# datagridview bindingsource datarow

我一直在这个墙上撞墙而我无法让它工作 - 所以我想我会问这里以防万一它很简单。

基本上,我有一个DataGridView,我试图以编程方式向它添加一行。

以下是我正在使用的代码:

boundBookDataSet.LoadBoundBook.AddLoadBoundBookRow(
    null, null, null, null, null, DateTime.Now, null, null, null, 
    false, false, -1, null, -1, -1);

我还尝试在添加行之后在DataSet和新DataRow上调用AcceptChanges,并且我也尝试在DataGridView上调用Refresh。

无论如何,无论我做什么,我最终都会遇到boundBookDataSet.LoadBoundBook.Count == 70和loadBoundBookBindingSource.Count == 69。我的DataGridView不会拾取新行,因为它没有反映在绑定源中(至少这是我的猜测)。

可悲的是,这是有效的 - 但我做了一个巨大的改变,无法弄清楚是什么打破了它。被破坏的代码根本没有改变......

如果有人知道如何解决这个问题,我会非常感谢你的帮助。

2 个答案:

答案 0 :(得分:1)

啊哈!我想到了。 :)

当我再次浏览BindingSource中的字段时,我意识到我设置了Filter字段。如果我删除过滤器,loadBoundBookBindingSource.Count会正确递增,DataGridView会获取新记录。

基本上,看起来我需要清除过滤器,添加记录,然后再次设置过滤器。

答案 1 :(得分:0)