绑定空数据表时的DetailsView错误?

我正在使用.net 4.5,我发现了这种奇怪的行为:

标记:

 

码:

 protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable("Test"); dt.Columns.Add("Column", typeof(string)); // If I uncomment the line it works! // dt.Rows.Add("row 1"); dtvTest.DataSource = dt; dtvTest.DataBind(); } 

结果是

集合不能为空。 参数名称:c

抛出dtvTest.DataBind()。

如果至少有一行它可以工作!! (见评论栏)。

关于如何解决/解决它的任何想法?

非常感谢

我在最近的一个项目中遇到了同样的问题,我通过绑定空行colleciton解决了它,如下所示,(顺便说一句,我在你的解决方案编译它,它工作得很好)

  protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable("Test"); dt.Columns.Add("Column", typeof(string)); // If I uncomment the line it works! // dt.Rows.Add("row 1"); dt.LoadDataRow(new string[1],true); dtvTest.DataSource = dt; dtvTest.DataBind(); } 

而且无论你添加多少列,它仍然有效。

问候