私はDataGridView
にDataSource
セットを持っていますList<myClass>
AllowUserToAddRows
ただし、に設定するとtrue
、新しい行インジケーターが表示されません。
に設定するDataSource
とBindingList<myClass>
、問題は解決したようです。
Q:を置き換える必要がありますかList<>
、BindingList<>
それともより良い解決策がありますか?
私はDataGridView
にDataSource
セットを持っていますList<myClass>
AllowUserToAddRows
ただし、に設定するとtrue
、新しい行インジケーターが表示されません。
に設定するDataSource
とBindingList<myClass>
、問題は解決したようです。
Q:を置き換える必要がありますかList<>
、BindingList<>
それともより良い解決策がありますか?
myClass
パブリックパラメーターレスコンストラクターはありますか?そうでない場合は、カスタムコンストラクターから派生しBindingList<T>
てオーバーライドAddNewCore
し、カスタムコンストラクターを呼び出すことができます。
(編集)あるいは、リストをaでラップするだけで、BindingSource
機能する場合があります。
using System;
using System.Windows.Forms;
using System.Collections.Generic;
public class Person {
public string Name { get; set; }
[STAThread]
static void Main() {
var people = new List<Person> { new Person { Name = "Fred" } };
BindingSource bs = new BindingSource();
bs.DataSource = people;
Application.Run(new Form { Controls = { new DataGridView {
Dock = DockStyle.Fill, DataSource = bs } } });
}
}