主頁(yè) > 知識(shí)庫(kù) > GridView導(dǎo)出Excel實(shí)現(xiàn)原理與代碼

GridView導(dǎo)出Excel實(shí)現(xiàn)原理與代碼

熱門標(biāo)簽:蘋果手機(jī)凱立德地圖標(biāo)注 合肥電銷外呼系統(tǒng)哪家公司做的好 同安公安400電話怎么申請(qǐng)流程 預(yù)測(cè)式外呼系統(tǒng)使用說(shuō)明 電話機(jī)器人軟件銷售工作 申請(qǐng)400電話手續(xù) 南陽(yáng)外呼系統(tǒng)定制化 玉林市機(jī)器人外呼系統(tǒng)哪家好 百度ai地圖標(biāo)注
為了完成領(lǐng)導(dǎo)交代的任務(wù),這幾天都在做數(shù)據(jù)展現(xiàn),因?yàn)闀r(shí)間比較緊,所以也沒(méi)做太復(fù)雜,使用GridView來(lái)展示數(shù)據(jù)庫(kù)表。幾乎沒(méi)對(duì)GridView的格式做什么設(shè)定,從配置文件中加載SQL,跑出數(shù)據(jù)就直接綁定到GridView。發(fā)現(xiàn)了一些問(wèn)題,比如GridView的自動(dòng)綁定列的寬度是沒(méi)法設(shè)定的,而此時(shí)GridView的表格輸出是不帶寬度信息的,所以導(dǎo)致表格列比較多的時(shí)候顯示起來(lái)會(huì)擠到頁(yè)面里面很難看,由于表的列數(shù)并不是固定的,所以也沒(méi)法很簡(jiǎn)單的用模版列的方式做,最后只好直接將表格寬度設(shè)置成一個(gè)很大的數(shù)了事。

此外做了個(gè)導(dǎo)出Excel的功能,主要代碼如下

復(fù)制代碼 代碼如下:

private void DumpExcel(GridView gv, string FileName)
{//帶格式導(dǎo)出
string style = @"style> .text { mso-number-format:\@; } /style>";
Response.ClearContent();
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AddHeader("content-disposition", "attachment; filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
Response.ContentType = "application/excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gv.RenderControl(htw);
// Style is added dynamically
Response.Write(style);
Response.Write(sw.ToString());
Response.End();
}
public override void VerifyRenderingInServerForm(Control control)
{
}

上面的行17的重載函數(shù)是必須的,否則會(huì)報(bào)“GridView要在有run=server的From體內(nèi)”的錯(cuò)。
此外,變量style的作用是控制GridView列的樣式,避免發(fā)生excel表中字符前導(dǎo)0被當(dāng)成數(shù)字給截掉這樣的問(wèn)題, 通過(guò)Response.Write方法將其添加到輸出流中。最后把樣式添加到ID列。這一步需要在RowDataBound事件中完成:
復(fù)制代碼 代碼如下:

1protected void gvUsers_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[1].Attributes.Add("class", "text");
}
}
您可能感興趣的文章:
  • asp.net DataGridView導(dǎo)出到Excel的三個(gè)方法[親測(cè)]
  • asp.net GridView導(dǎo)出到Excel代碼
  • GridView選擇性導(dǎo)出Excel解決方案
  • 通過(guò)剪貼板實(shí)現(xiàn)將DataGridView中的數(shù)據(jù)導(dǎo)出到Excel
  • C#使用RenderControl將GridView控件導(dǎo)出到EXCEL的方法
  • ASP.NET使用GridView導(dǎo)出Excel實(shí)現(xiàn)方法
  • C#導(dǎo)出GridView數(shù)據(jù)到Excel文件類實(shí)例
  • GridView導(dǎo)出Excel常見(jiàn)的5種文本格式

標(biāo)簽:南京 南京 南昌 海南 嘉興 臺(tái)州 淄博 揚(yáng)州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《GridView導(dǎo)出Excel實(shí)現(xiàn)原理與代碼》,本文關(guān)鍵詞  GridView,導(dǎo)出,Excel,實(shí)現(xiàn),原理,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《GridView導(dǎo)出Excel實(shí)現(xiàn)原理與代碼》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于GridView導(dǎo)出Excel實(shí)現(xiàn)原理與代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章