读书人

dictionary 只能遍历最后一个,该怎么解

发布时间: 2012-06-15 19:37:05 作者: rapoo

dictionary 只能遍历最后一个
OneAnnal()//是加载一条记录函数

private void butAdd_Click(object sender, EventArgs e)
{//添加按钮
if (estimate())
{
OneAnnal();
liquidation();//清空
singers.Add(singer.Stunumber,singer);//把每条记录加载到 singers
}
}

private void butSave_Click(object sender, EventArgs e)
{//保存按钮,保存到Excel
string fileName = Application.StartupPath + "\\data\\"+classNumber+".xls";//获取文件路径
//加载excel
MSExcel.Application excelApp;
MSExcel.Workbook excelDoc;
excelApp = new MSExcel.ApplicationClass();
Object Nothing = Missing.Value;
excelDoc = excelApp.Workbooks.Add(Nothing);
MSExcel.Worksheet ws = (MSExcel.Worksheet)excelDoc.Sheets[1];

int i = 3;//从第三行开始写入
foreach (Basis oneL in singers.Values)
{//遍历dictionary
ws.Cells[i, 1] = oneL.Stunumber;
ws.Columns.AutoFit();//自动调整宽度
ws.Cells[i, 2] = oneL.Stuname;
ws.Columns.AutoFit();
ws.Cells[i, 3] = oneL.Idcard;
ws.Columns.AutoFit();
ws.Cells[i, 4] = oneL.Sex;
ws.Columns.AutoFit();
ws.Cells[i, 5] = oneL.Birthrate;
ws.Columns.AutoFit();
ws.Cells[i, 6] = oneL.Nation;
ws.Columns.AutoFit();
ws.Cells[i, 7] = oneL.Handsetnumber;
ws.Columns.AutoFit();
ws.Cells[i, 8] = oneL.QQ;
ws.Columns.AutoFit();
ws.Cells[i, 9] = oneL.Bedchamber;
ws.Columns.AutoFit();
ws.Cells[i, 10] = oneL.Houseaddress;
ws.Columns.AutoFit();
ws.Cells[i, 11] = i.ToString();
i++;//行数增加
}

现在写到excel都是最后一条记录

[解决办法]

探讨
引用:
butAdd_Click 方法里加上下面红字那行
private void butAdd_Click(object sender, EventArgs e)
{//添加按钮
if (estimate())
{
singer = new Basis();
OneAnnal();
liquidation();//清空
singers.Add(singer.S……

读书人网 >C#

热点推荐