1

このエラー メッセージ (「列を持たない 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 !
4

1 に答える 1

6

列は、データ メンバーだけでなく、プロパティとして宣言する必要があります。データ グリッドに列として表示するクラス メンバーに追加{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!
于 2013-06-18T21:32:47.750 に答える