将数据源设置为datagridview不会显示数据

时间:2013-11-02 09:13:24

标签: c# winforms datagridview

我正在为datagridview分配一个数据源,它工作正常但只是第一次。当我第二次分配数据源时,它不显示数据。我的代码是:

gridProjectEdit.DataSource = null;
gridProjectEdit.Columns.Clear();
gridProjectEdit.Rows.Clear();            
gridProjectEdit.Refresh();

if(dt!=null)
dt.Clear();
dt=methodCaller.GetProjectData(); //get the data
gridProjectEdit.DataSource = dt;  //copying datatable
copyOfProjectDataTable = dt.Copy(); //this datatable used to check sno

如果重要的话,我也会像这样重命名列标题:

//renaming column header
gridProjectEdit.Columns[0].HeaderText = "S.NO.";
gridProjectEdit.Columns[1].HeaderText = "PROJECTNAME";

当我第二次调试此代码时,它显示数据表有6行,但我不知道它为什么不显示数据,它只显示列标题。

1 个答案:

答案 0 :(得分:0)

在我看来,您不应该多次分配数据源。在构造函数或OnInitialize方法中设置一次DataSource,而不是执行

dt=methodCaller.GetProjectData();

dt.AddRange(methodCaller.GetProjectData());