对象到 Datagridview 的绑定列表
Binding List of object to Datagridview
我无法将 List<Person>
绑定到 DataGridView
:
public class Person
{
public Person(string name, bool likesbacon)
{
Name = name;
LikesBacon = likesbacon;
}
public string Name { get; }
public bool LikesBacon { get; set; }
}
DataGridView
有 2 列,TextBoxColumn
用于名称,CheckBoxColumn
用于 LikesBacon。 DataPropertyName
已正确设置,DataGridView
已按预期创建。
public MyForm(List<Person> persons)
{
InitializeComponent();
dgv.AutoGenerateColumns = false;
dgv.DataSource = persons;
}
但是当我点击 CheckBox
时没有任何反应(dgv 的只读 属性 设置为 false)。当我逐步调试时,我发现只要鼠标指针悬停在 DataGridView
的单元格上,只要鼠标指针位于单元格上方,调试器就会循环进入 属性 中。
因此我无法通过 dgv 更改 Person 的属性。我做错了什么?
将列的 ReadOnly
属性 更改为 false 后,我能够使其正常工作。 :facepalm:
我无法将 List<Person>
绑定到 DataGridView
:
public class Person
{
public Person(string name, bool likesbacon)
{
Name = name;
LikesBacon = likesbacon;
}
public string Name { get; }
public bool LikesBacon { get; set; }
}
DataGridView
有 2 列,TextBoxColumn
用于名称,CheckBoxColumn
用于 LikesBacon。 DataPropertyName
已正确设置,DataGridView
已按预期创建。
public MyForm(List<Person> persons)
{
InitializeComponent();
dgv.AutoGenerateColumns = false;
dgv.DataSource = persons;
}
但是当我点击 CheckBox
时没有任何反应(dgv 的只读 属性 设置为 false)。当我逐步调试时,我发现只要鼠标指针悬停在 DataGridView
的单元格上,只要鼠标指针位于单元格上方,调试器就会循环进入 属性 中。
因此我无法通过 dgv 更改 Person 的属性。我做错了什么?
将列的 ReadOnly
属性 更改为 false 后,我能够使其正常工作。 :facepalm: