Winform DataGridView不显示行

时间:2015-05-15 23:37:01

标签: winforms datagridview

我将DataGridView与datasource绑定(NOT NULL!)

AutoGenerateColumns = false
dgrList.Datasource = mySource;

我有一个包含4列的DataGridView(设计时)。 " MYSOURCE"包含3行,但网格没有任何行。不是有3"空行"没有文本,它没有显示任何内容,就像数据源是null(但不是)。当我使用

foreach(var c in mySource){
   dgrList.Rows.add(new object[]....);
}

它也显示了3行。 除了上面的

之外,没有其他语句设置数据源

2 个答案:

答案 0 :(得分:0)

您需要为已创建的列设置DataPropertyName,以便DataGridView知道要显示的对象的哪些属性。例如。如果你有2列(名称和数据):

dgrList.AutoGenerateColumns = false;
dgrList.Columns[0].DataPropertyName = "Name";
dgrList.Columns[1].DataPropertyName = "Data";

dgrList.DataSource = new List<object>() 
{ 
    new { Name = "A", Data = 1 }, 
    new { Name = "B", Data = 2 } 
};

答案 1 :(得分:0)

将DataSource设置为datagridview后,需要调用DataBind方法。

dgrList.Datasource = mySource;
dgrList.DataBind();