表格控件(GridView)数据格式化导出到Excel并下载.
来源:互联网 发布:旁氏米粹洗面奶 知乎 编辑:程序博客网 时间:2024/06/04 18:37
将GridView数据按照原有格式导出到Excel表格中便于编辑和打印.
效果如下.
主要代码
protected void Button2_Click(object sender, EventArgs e)
...{
GridView2.Visible = true;
PrepareGridViewForExport(GridView2);
// GridView2.DataBind();
string attachment = "attachment; filename=download.xls";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
GridView2.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
GridView2.Visible = false;
}
public override void VerifyRenderingInServerForm(Control control)
...{
}
private void PrepareGridViewForExport(Control gv)
...{
LinkButton lb = new LinkButton();
Literal l = new Literal();
string name = String.Empty;
for (int i = 0; i < gv.Controls.Count; i++)
...{
if (gv.Controls[i].GetType() == typeof(LinkButton))
...{
l.Text = (gv.Controls[i] as LinkButton).Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(DropDownList))
...{
l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(CheckBox))
...{
l.Text = (gv.Controls[i] as CheckBox).Checked ? "True" : "False";
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
if (gv.Controls[i].HasControls())
...{
PrepareGridViewForExport(gv.Controls[i]);
}
}
}
...{
GridView2.Visible = true;
PrepareGridViewForExport(GridView2);
// GridView2.DataBind();
string attachment = "attachment; filename=download.xls";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
GridView2.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
GridView2.Visible = false;
}
public override void VerifyRenderingInServerForm(Control control)
...{
}
private void PrepareGridViewForExport(Control gv)
...{
LinkButton lb = new LinkButton();
Literal l = new Literal();
string name = String.Empty;
for (int i = 0; i < gv.Controls.Count; i++)
...{
if (gv.Controls[i].GetType() == typeof(LinkButton))
...{
l.Text = (gv.Controls[i] as LinkButton).Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(DropDownList))
...{
l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(CheckBox))
...{
l.Text = (gv.Controls[i] as CheckBox).Checked ? "True" : "False";
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
if (gv.Controls[i].HasControls())
...{
PrepareGridViewForExport(gv.Controls[i]);
}
}
}
- 表格控件(GridView)数据格式化导出到Excel并下载.
- Gridview导出到Excel并下载
- .net MVC 数据库数据导出到Excel表格并下载到本地
- C#如何读取Excel表格数据并显示到GridView控件
- Repeter和GridView的数据导出到EXCEL表格中
- 用jxl 从jsp页面导出数据到excel表格并下载保存
- Java表格数据导出EXCEL 并从服务器下载实例
- 如何将GridView控件数据导出到word和Excel
- .net从gridview控件导出数据到excel续
- 将GridView控件数据导出到Excel中。
- GridView导出数据到Excel
- GridView导出数据到Excel
- GridView导出数据到Excel
- GridView导出数据到Excel
- Gridview导出数据到Excel
- 导出gridview数据到Excel
- gridview导出数据到excel
- 导出GridView数据到Excel
- 自己动手提高ubuntu系统的性能
- jsp页面checkbox数组递交到Action代码
- 利用GDI+的双缓冲技术来提高绘图效率
- mysql常用命令集合
- 在CSDN的论坛中发现的两个小题目
- 表格控件(GridView)数据格式化导出到Excel并下载.
- 用MFC如何高效地绘图
- Java教程 网上收集到的eclipse技巧
- c编译器对内存的划分和使用
- 用javascript读XML文件
- 威金病毒(viking)症状和治理方法
- Intel的搞笑短片,挺幽默的。
- PHP和XSS跨站攻击
- 使用 SystemTap 调试内核