思路:实际上是读取页面上某个控件下的内容再导出

  protected void btnExcel_Click(object sender, EventArgs e)
{
string bgType = "";
string fileName = "预算汇总申请查询"; ContTaskList1.Visible = false;
ContApproveOpinion1.Visible = false;
trCondition.Visible = false;
btnQuery.Visible = false;
btnExcel.Visible = false;
UcAssetBgSum1.isSHOW = false;
trE.Visible = true; switch (dpQuarter.SelectedValue.Trim())
{
case "":
bgType = "年度预算";
break;
case "":
bgType = "一季度预算";
break;
case "":
bgType = "二季度预算";
break;
case "":
bgType = "三季度预算";
break;
case "":
bgType = "四季度预算";
break;
}
this.lblYear.Text = dpYear.SelectedValue.Trim() + "年";
this.lblQuarter.Text = bgType; using (DataReimbursementDataContext db = new DataReimbursementDataContext())
{
int intYear = int.Parse(this.dpYear.SelectedValue.Trim());
int intQuarter = int.Parse(this.dpQuarter.SelectedValue.Trim());
OA_TAB_FA_DOCSUM doc = db.OA_TAB_FA_DOCSUM.SingleOrDefault(p => p.DOC_YEAR == intYear && p.DOC_QUARTER == intQuarter);
if (doc == null)
{
TextHelper.ShowMessage(tdMsg, "没有记录!", false);
}
else
{
TextHelper.ShowMessage(tdMsg, "", false); this.UcAssetBgSum1.Visible = true;
this.UcAssetBgSum1.DocNo = doc.DOC_ID.Trim();
this.UcAssetBgSum1.BindData();
} } StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter htw = new HtmlTextWriter(sw); Page page = new Page();
HtmlForm form = new HtmlForm(); TABLE2.EnableViewState = false; page.EnableEventValidation = false; page.DesignerInitialize(); page.Controls.Add(form);
form.Controls.Add(TABLE2); page.RenderControl(htw); Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpContext.Current.Server.UrlEncode(fileName) + ".xls");
Response.Charset = "UTF-8";
Response.ContentEncoding = Encoding.Default;
Response.Write(sb.ToString());
Response.End(); }
<table id="TABLE3" width="100%" cellspacing="0" border="0" cellpadding="0" runat="server">
<tr>
<td colspan="2" valign="top">
<table width="100%" cellspacing="0" cellpadding="0" runat="server">
<tr>
<td height="20" >
<table width="100%" cellspacing="0" cellpadding="0" runat="server">
<tr>
<td width="30" bgcolor="#F2F9FD" class="p9">
<div align="center">
<img src="../images/bon_8.png" width="18" height="18"></div>
</td>
<td height="30" bgcolor="#F2F9FD" class="p9">
您当前的位置:固定资产 > 预算汇总申请查询</td>
<td class="p9" bgcolor="#F2F9FD" align="right" width="200" >登录用户:
    <uc1:UcUserInfo ID="UcUserInfo1" runat="server" />
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="14" background="../images/right_jian.jpg">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="3%">
 
</td>
<td>
<table border="0" cellpadding="1" cellspacing="1" class="Table1" id="TABLE2" width="100%" runat="server">
<tr id="trCondition" runat="server">
<td class="tdleft">年度:</td>
<td>
<asp:DropDownList ID="dpYear" runat="server">
</asp:DropDownList>
</td>
<td class="tdleft">预算类型:</td>
<td>
<asp:DropDownList ID="dpQuarter" runat="server">
<asp:ListItem Value="0">年度预算</asp:ListItem>
<asp:ListItem Value="1">一季度预算</asp:ListItem>
<asp:ListItem Value="2">二季度预算</asp:ListItem>
<asp:ListItem Value="3">三季度预算</asp:ListItem>
<asp:ListItem Value="4">四季度预算</asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:Button ID="btnQuery" runat="server" Text="查 询" onclick="btnQuery_Click" />
    
<asp:Button ID="btnExcel" runat="server" Text="导出excel"
onclick="btnExcel_Click" />
</td>
</tr>
<tr>
<td id="tdMsg" runat="server" colspan=5> </td>
</tr> <tr id="trE" runat="server" visible="false">
<td colspan="5">
年度:<asp:Label ID="lblYear" runat="server" Text=""></asp:Label>
     
预算类型:<asp:Label ID="lblQuarter" runat="server" Text=""></asp:Label>
</td>
</tr>
<tr>
<td colspan=5> <uc2:UcAssetBgSum ID="UcAssetBgSum1" runat="server" />
<uc3:ContTaskList ID="ContTaskList1" Visible=false runat="server" />
<uc4:ContApproveOpinion ID="ContApproveOpinion1" Visible=false runat="server" />
</td>
</tr>
</table>
</td>
</tr>
</table>

先存个档吧,省的以后还要导出找。

asp.net导出excle的更多相关文章

  1. Asp.net导出Excel续章(自定义合并单元格,非Office组件)

    结合上次写的导出Excel方法,这次上头要求我将列头进行一下合并 以前的效果: 改进后的效果: 在上篇文章中写到了Excel的导出方法,这次为了避免在生产环境中使用Office组件,服务器各种权限配置 ...

  2. asp.net 导出Excel

    分享一个asp.net 导出假Excel代码.优点,不用借助于任何插件比如(NPOI),复制代码,修改grid.DataSource直接导出. 先看导出后的效果图 System.Web.UI.WebC ...

  3. 【转】asp.net导出数据到Excel的三种方法

    来源:http://www.cnblogs.com/lishengpeng1982/archive/2008/04/03/1135490.html 原文出处:http://blog.csdn.net/ ...

  4. asp.net导出excel示例代码

    asp.net导出excel的简单方法. excel的操作,最常用的就是导出和导入. 本例使用NPOI实现. 代码:/// <summary> );             ;       ...

  5. [转] Asp.Net 导出 Excel 数据的9种方案

    湛刚 de BLOG 原文地址 Asp.Net 导出 Excel 数据的9种方案 简介 Excel 的强大之处在于它不仅仅只能打开Excel格式的文档,它还能打开CSV格式.Tab格式.website ...

  6. ASP.NET导出数据到Excel 实例介绍

    ASP.NET导出数据到Excel  该方法只是把asp.net页面保存成html页面只是把后缀改为xlc不过excel可以读取,接下连我看看还有别的方式能导出数据,并利用模版生成. 下面是代码 新建 ...

  7. ASP.NET导出EXCEL类

    最新ASP.NET导出EXCEL类 说明:可以导出ASP.NET页面和DATAGRID(WebControl)数据,可以导出表单头 using System;using System.Data;usi ...

  8. 使导出excle文档实现ALT+Enter的效果()

    JAVA中输入什么转义字符,使导出excle文档实现ALT+Enter的效果?或者有没有其他方法可以实现. 20 JAVA中输入什么转义字符,使导出excle文档实现ALT+Enter的效果?或者有没 ...

  9. ASP.NET导出word实例

    ASP.NET导出word实例 最近遇到一个题目就是如何在asp.net中将数据导出到word中,由于数据是动态的,所以需要在后台拼出想要的的格式,翻遍了网页找出了一个比较满意的代码,感谢那位高手.代 ...

随机推荐

  1. 4、申请开发(Development)证书和描述文件

    开发(Development)证书用于测试环境下使用,可以直接安装到手机上(不用提交到Appstore),但一个描述文件最多只能绑定100台设备(因此通过这种证书正式发布应用是行不通的). 申请开发( ...

  2. SAP HANA HDBSQL命令

    1.登录: window操作系统下面: 打开C:\Program Files\SAP\hdbclient\hdbsql.exe \c 连接数据库  connect的缩写 HANA hostname:  ...

  3. Javascript 中 null和undefined的区别

    null表示"没有对象",即该处不应该有值.典型用法是: (1) 作为函数的参数,表示该函数的参数不是对象. (2) 作为对象原型链的终点. Object.getPrototype ...

  4. winform 之控件ListView

    使用ListView构建表格展示数据 1.添加列数据:控件ListView--上方按钮--视图(Details)--编辑列--添加 2.添加行数据:--编辑项(行)--添加 添加数据:Text:默认添 ...

  5. Android DBFlow学习及示例

    项目地址:Kotlin-DBflow-example Kotlin-DBflow-example DBFlow是一个功能强大的,非常简单的,带有注解处理的ORM Android数据库.github地址 ...

  6. 调试django项目的土方法

    pyscripter是自己编写python程序的ide.有时想深入了解一些程序的工作机制,直接看源码可能不能一下子看懂,通过看程序运行的结果来看程序的作用更方便理解程序. 调试django项目时,使用 ...

  7. charles抓包的安装,使用说明以及常见问题解决(windows)

    charles抓包的安装,使用说明以及常见问题解决(windows) https://blog.csdn.net/zhangxiang_1102/article/details/77855548

  8. C++/C#:类Class与结构体Struct的区别

    C++中: 默认的访问控制.继承访问权限不同:struct时public的,class时 private的: 其它基本一样. C#中: struct是值类型,class是引用类型的: struct S ...

  9. jsfl 生成flash 工具面板

    利用flash组件的List做界面,先从flash中拖出List组件,然后删除.绑定Main类. package { import flash.display.Sprite; import flash ...

  10. javascript:控制一个元素高度始终等于浏览器高度

    window.onresize = function(){ this.opHtight()} //给浏览器添加窗口大小改变事件window.onresize = function(){ this.op ...