最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#使用RenderControl將GridView控件導(dǎo)出到EXCEL的方法

 更新時(shí)間:2014年08月25日 17:35:05   投稿:shichen2014  
這篇文章主要介紹了C#使用RenderControl將GridView控件導(dǎo)出到EXCEL的方法,是C#應(yīng)用程序設(shè)計(jì)中非常實(shí)用的一個(gè)功能,需要的朋友可以參考下

本文實(shí)例展示了C#使用RenderControl將GridView控件導(dǎo)出到EXCEL的方法,是非常實(shí)用的一個(gè)功能,分享給大家供大家參考。具體如下:

主要功能代碼如下:

// 把GridView輸出到Excel文件 
private void ExportExcel(GridView gridView, string title, string title2, string fileName)
{
  int nHideCols = 0;
  //如果不想輸出出某列,將Visible設(shè)為false即可
  for (int i = 0; i < gridView.Columns.Count; i++)
  {
 if (gridView.Columns[i].HeaderText == "設(shè)備狀態(tài)")
 {
   gridView.Columns[i].Visible = false;
   gridView.Columns[i].ControlStyle.Width = 0;
   nHideCols = 1;
   break;
 }
  }
  //設(shè)定顯示字符集
  Response.Charset = "utf-8";
  //設(shè)定內(nèi)容字符集
  Response.ContentEncoding = Encoding.GetEncoding("utf-8"); 

  //設(shè)定文件名
  Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName, Encoding.UTF8).Replace('+', '_').Replace('-', '_'));
  //設(shè)定文件類型  也可以是application/ms-word,也可以是text/html(字符集設(shè)為gb2312)
  Response.ContentType = "application/ms-excel";
  this.EnableViewState = false;
  using (StringWriter tw = new StringWriter())
  {
 using (HtmlTextWriter hell = new HtmlTextWriter(tw))
 {
   gridView.AllowPaging = false;
   gridView.RenderControl(hell);
   string s = tw.ToString();
   s = s.Replace("\r\n", "");
   int index = s.IndexOf("<tr");
   //可以自定義Excel文件的標(biāo)題
   string head = "<tr><td colspan=\"" + (gridView.Columns.Count - nHideCols).ToString() + "\" style=\"text-align: center; height: 42px; font-size: 24px; font-weight: bolder; color: #000000;\">" + title + "</td></tr>" +
   "<tr><td colspan=\"" + (gridView.Columns.Count - nHideCols).ToString() + "\" style=\"text-align: center; height: 24px; font-size: 12px; color: #000000;\">" + title2 + "</td></tr>";
   //使用Index來(lái)判斷是否存在數(shù)據(jù),當(dāng)然也可以用gridView.Rows.Count來(lái)判斷
   if (index != -1)
   {
 //有數(shù)據(jù)的
 s = s.Insert(index, head);
   }
   else
   {
 //沒(méi)有數(shù)據(jù)的時(shí)候
 s = "<table cellspacing=\"0\" cellpadding=\"3\" rules=\"rows\" border=\"1\" id=\"" + gridView.ID + "\" style=\"background-color:White;border-color:#E7E7FF;border-width:1px;border-style:None;border-collapse:collapse;\">" +
   head + "</table>";
   }
   Response.Write(s);
   Response.End();
 }
  }
}
//同時(shí)vs2005,vs2003會(huì)報(bào)錯(cuò)“類型“ExGridView”的控件“GridViewMaster”必須放在具有 runat=server 的窗體標(biāo)記內(nèi)
//需要添加下面取消對(duì)GridViewMaster 控件驗(yàn)證的方法
public override void VerifyRenderingInServerForm(Control control)
{
  if (!control.GetType().Equals(gridView.GetType()))
  {
 base.VerifyRenderingInServerForm(control);
  }
}

本文實(shí)例代碼備有較為詳盡的注釋,應(yīng)該不難理解。希望本文實(shí)例對(duì)大家C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 詳解C#把DataTable中數(shù)據(jù)一次插入數(shù)據(jù)庫(kù)的方法

    詳解C#把DataTable中數(shù)據(jù)一次插入數(shù)據(jù)庫(kù)的方法

    本篇文章主要介紹了詳解C#把DataTable中數(shù)據(jù)一次插入數(shù)據(jù)庫(kù)的方法,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-01-01
  • C#并查集(union-find)算法詳解

    C#并查集(union-find)算法詳解

    本文詳細(xì)講解了C#并查集(union-find)算法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • c# 繼承快速入門

    c# 繼承快速入門

    這篇文章主要介紹了c# 繼承快速入門的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • C#排序算法之堆排序

    C#排序算法之堆排序

    這篇文章主要為大家詳細(xì)介紹了C#排序算法之堆排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-01-01
  • C#標(biāo)識(shí)符的使用小結(jié)

    C#標(biāo)識(shí)符的使用小結(jié)

    C#標(biāo)識(shí)符還是比較常見(jiàn)的東西,這里我們主要介紹C#標(biāo)識(shí)符中的用法,包括介紹 static 的方法和bool 的形參等方面
    2014-01-01
  • 解決Unity項(xiàng)目中UI腳本丟失的問(wèn)題

    解決Unity項(xiàng)目中UI腳本丟失的問(wèn)題

    這篇文章主要介紹了解決Unity項(xiàng)目中UI腳本丟失的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • C#多線程編程中的鎖系統(tǒng)(三)

    C#多線程編程中的鎖系統(tǒng)(三)

    這篇文章主要介紹了C#多線程編程中的鎖系統(tǒng)(三),本本文主要說(shuō)下基于內(nèi)核模式構(gòu)造的線程同步方式、事件、信號(hào)量以及WaitHandle、AutoResetEvent、ManualResetEvent等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • C#如何優(yōu)雅的結(jié)束線程

    C#如何優(yōu)雅的結(jié)束線程

    這篇文章主要介紹了C#如何優(yōu)雅的結(jié)束一個(gè)線程,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • c# record的使用場(chǎng)景

    c# record的使用場(chǎng)景

    這篇文章主要介紹了c# record的使用場(chǎng)景,幫助大家更好的理解和學(xué)習(xí)使用c#的新特性,感興趣的朋友可以了解下
    2021-02-02
  • C#日期格式字符串的相互轉(zhuǎn)換操作實(shí)例分析

    C#日期格式字符串的相互轉(zhuǎn)換操作實(shí)例分析

    這篇文章主要介紹了C#日期格式字符串的相互轉(zhuǎn)換操作,結(jié)合實(shí)例形式分析了C#日期格式字符串的相互轉(zhuǎn)換操作函數(shù)與相關(guān)使用技巧,需要的朋友可以參考下
    2019-08-08

最新評(píng)論

遂宁市| 海城市| 马山县| 陇川县| 徐水县| 潞城市| 禹城市| 秀山| 太保市| 报价| 扶风县| 通州区| 达孜县| 沂源县| 大埔县| 昭觉县| 嘉祥县| 郎溪县| 太和县| 天津市| 墨玉县| 鹰潭市| 屯门区| 娄底市| 曲周县| 珠海市| 麻阳| 麻城市| 轮台县| 日照市| 娄底市| 教育| 长汀县| 江孜县| 定陶县| 福清市| 镇原县| 黑山县| 德安县| 兴业县| 静乐县|