“没有行可以添加到没有列的DataGridView控件。必须先添加列。”当DataGridView与DataSource一起使用时

时间:2013-06-18 21:32:48

标签: c# datagridview

我收到此错误消息(“没有行可以添加到没有列的DataGridView控件。必须先添加列。”)但我看不出我的代码有什么问题。我发誓我已经完成了数百次,但是出了点问题。

class ViewItem {
   public string Name;
   public string Value;
}

...
BindingList<ViewItem> list=  new BindingList<ViewItem>();
dataGridView.DataSource = list;
ViewItem vi = new ViewItem(){Name = "Foo", Value = "Bar"};
list.Add(vi);
/// error here !

1 个答案:

答案 0 :(得分:5)

列需要声明为 Properties 而不仅仅是数据成员。将{get;set;}添加到要在数据网格中显示为列的类成员。

class ViewItem {
   public string Name { get;set;}
   public string Value { get;set;}
}

...
BindingList<ViewItem> list=  new BindingList<ViewItem>();
dataGridView.DataSource = list;
ViewItem vi = new ViewItem(){Name = "Foo", Value = "Bar"};
list.Add(vi);
/// works!