国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

DataGrid - 導出Excel文件

2024-07-21 02:23:11
字體:
來源:轉載
供稿:網友
方法有很多,我只用了最簡單的方法

1.引用 com組件 excel.dll

2.實現如下

public void exportexcel(){
dataset ds=this.dataset;//取得datagrid綁定的dataset
if(ds==null) return;

string savefilename="";
bool filesaved=false;
savefiledialog savedialog=new savefiledialog();
savedialog.defaultext ="xls";
savedialog.filter="excel文件|*.xls";
savedialog.filename ="sheet1";
savedialog.showdialog();
savefilename=savedialog.filename;
if(savefilename.indexof(":")<0) return; //被點了取消

excel.application xlapp=new excel.application();

if(xlapp==null){
messagebox.show("無法創建excel對象,可能您的機子未安裝excel");
return;
}

excel.workbooks workbooks=xlapp.workbooks;
excel.workbook workbook=workbooks.add(excel.xlwbatemplate.xlwbatworksheet);
excel.worksheet worksheet=(excel.worksheet)workbook.worksheets[1];//取得sheet1
excel.range range;

string oldcaption=this.captiontext;
long totalcount=ds.tables[0].rows.count;
long rowread=0;
float percent=0;

worksheet.cells[1,1]=this.captiontext;
//寫入字段
for(int i=0;i<ds.tables[0].columns.count;i++){
worksheet.cells[2,i+1]=ds.tables[0].columns[i].columnname;
range=(excel.range)worksheet.cells[2,i+1];
range.interior.colorindex = 15;
range.font.bold = true;

}
//寫入數值
this.captionvisible = true;
for(int r=0;r<ds.tables[0].rows.count;r++){
for(int i=0;i<ds.tables[0].columns.count;i++){
worksheet.cells[r+3,i+1]=ds.tables[0].rows[r][i];
}
rowread++;
percent=((float)(100*rowread))/totalcount;
this.captiontext = "正在導出數據["+ percent.tostring("0.00") +"%]...";
application.doevents();
}
this.captionvisible = false;
this.captiontext = oldcaption;

range=worksheet.get_range(worksheet.cells[2,1],worksheet.cells[ds.tables[0].rows.count+2,ds.tables[0].columns.count]);
range.borderaround(excel.xllinestyle.xlcontinuous,excel.xlborderweight.xlthin,excel.xlcolorindex.xlcolorindexautomatic,null);

range.borders[excel.xlbordersindex.xlinsidehorizontal].colorindex = excel.xlcolorindex.xlcolorindexautomatic;
range.borders[excel.xlbordersindex.xlinsidehorizontal].linestyle =excel.xllinestyle.xlcontinuous;
range.borders[excel.xlbordersindex.xlinsidehorizontal].weight =excel.xlborderweight.xlthin;

if(ds.tables[0].columns.count>1){
range.borders[excel.xlbordersindex.xlinsidevertical].colorindex =excel.xlcolorindex.xlcolorindexautomatic;
range.borders[excel.xlbordersindex.xlinsidevertical].linestyle = excel.xllinestyle.xlcontinuous;
range.borders[excel.xlbordersindex.xlinsidevertical].weight = excel.xlborderweight.xlthin;
}

if(savefilename!=""){
try{
workbook.saved =true;
workbook.savecopyas(savefilename);
filesaved=true;
}catch(exception ex){
filesaved=false;
messagebox.show("導出文件時出錯,文件可能正被打開!/n"+ex.message);
}
}else{
filesaved=false;
}
xlapp.quit();
gc.collect();//強行銷毀
if(filesaved && file.exists(savefilename)) system.diagnostics.process.start(savefilename);

}



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 涿州市| 嘉鱼县| 高唐县| 鸡西市| 阳东县| 南靖县| 东辽县| 江孜县| 赤壁市| 蒙阴县| 仁布县| 内江市| 通山县| 东丰县| 黎平县| 新竹市| 遵化市| 金阳县| 碌曲县| 定日县| 乌拉特后旗| 阳信县| 酉阳| 巫溪县| 阜阳市| 乃东县| 化德县| 漳州市| 徐州市| 大足县| 门源| 平遥县| 精河县| 临夏市| 墨脱县| 杭州市| 兴宁市| 湘西| 大名县| 宁波市| 博爱县|