如何读取DataGrid的列数
需求如下,我是要做一个导出Excel的功能。我把数据从数据库中查询出来以后,填充到DataGrid里面去。然后再把DataGrid中的数据导到Excel。我的代码是这样写的:
int rowCount = dgDataGrid.Items.Count;
int colCount = dgDataGrid.Columns.Count;
//标题项
for (int i = 0; i <colCount; i++)
{
exWS1.Cells[1, 1 + i] = dgDataGrid.Columns[i].HeaderText.ToString().Trim();
}
//数据项
for (int i = 1; i <= rowCount; i++)
{
for (int j = 0; j < colCount; j++)
{
exWS1.Cells[1 + i, 1 + j] = dgDataGrid.Items[i-1].Cells[j].ToString();
}
}
在调试的时候发现int colCount = dgDataGrid.Columns.Count;这里的值为0,实际是有8列的。请高手指点一下,我哪里写错了,为什么读不出DataGrid的当前列数。补充一句,我设置了允许DataGrid自动创建列。