【发布时间】:2015-10-15 20:02:11
【问题描述】:
我有一个 dataGridView,它应该使用一个列表作为数据源。运行应用程序时,它会显示带有列的网格(自动生成)。 当一个新的 Person 对象被创建并添加到名为 Persons 的列表中时,它只添加一个空行。在此之后添加新人员时,不会进行任何更改。
系统在 MainForm 中使用一个名为 Project 的属性,它存储用于网格的列表。
public partial class MainForm : Form
{
public static DataProject Project { get; set; }
public MainForm()
{
InitializeComponent();
//show a dialog, creating the Project-object
BindingSource bs = new BindingSource();
bs.DataSource = Project.Persons;
dataGridView1.DataSource = bs;
}
private void buttonAddPerson_Click(object sender, EventArgs e)
{
//show a dialog, creating a person and adding him to Project.Person (list).
dataGridView1.Refresh();
dataGridView1.Update();
}
}
这是 DataProject 对象:
public class DataProject
{
public string Name { get; set; }
public List<Person> Persons { get; set; }
public DataProject()
{
Persons = new List<Person>();
}
}
【问题讨论】:
-
制作数据项目:列表
-
由于 DataProject 还会包含其他列表,这将很难。
标签: c# datagridview datasource