ArgumentException未处理Application.run

时间:2010-06-17 20:35:26

标签: datagridview c#-3.0 datamember argumentexception

您好我经历了很多网站,似乎无法找到答案。

我修改了一个连接到通过C#Winforms应用程序上的tableadapter连接的Datagridview的视图,为了“重新连接”,我必须删除tableadapter并重新连接。这是为了摆脱有关唯一约束的错误。所以我解决了这个问题,现在应用程序启动但是当我点击该网格所在的选项卡时,我得到了:

System.ArgumentException was unhandled
  Message="Cannot bind to the property or column Id on the DataSource.\r\nParameter name: dataMember"
  Source="System.Windows.Forms"
  ParamName="dataMember"
  StackTrace:
       at System.Windows.Forms.BindToObject.CheckBinding()
       at System.Windows.Forms.BindToObject.SetBindingManagerBase(BindingManagerBase lManager).........

我似乎找不到这个问题的答案。有人能帮我吗?

由于

3 个答案:

答案 0 :(得分:0)

首先,我注意到这篇文章的标题你在application.Run上看到这个异常,这意味着它可能在callstack上被抛出了很多。你可以在菜单上进入Debug->异常,并在抛出时设置为Break on exceptions。这将帮助您准确隔离何时发生这种情况。听起来有绑定信息设置,你重新找回网格试图绑定的属性之一。

答案 1 :(得分:0)

虽然我不喜欢我的解决方案,但我已经解决了这个问题。我再次删除了TableAdapter并重命名了一次。然后我重命名了原始名称的所有实例(尽管我已经删除了适配器并重新创建了其中192个仍然存在!所以我们必须修复查询,因为我重命名了所有实例并使用了viewname作为TableAdapter名称,因为它是默认值。希望这有助于某人。

答案 2 :(得分:0)

如果您更改网格或视图中的架构并引用不再存在的字段,您将获得:

System.ArgumentException:无法绑定到DataSource.Parameter名称上的属性或列Id:dataMember

您缺少的列名列在单词列之后。我错过了“ID”栏目。我以为我无法绑定到属性或列Id,例如。我读错了。解决了具有相同问题的其他人无法绑定到列的问题 ALBUM。

我认为如果错误来自更接近Grid构建代码而不是Application.Run,​​我可能已经看到了它。也许即使错误地将网格/文本框绑定到ID字段,我也会看到它试图用ID字段做某事并发现它不存在。 Oy Vay: - )