`
流星剑
  • 浏览: 94286 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

数据绑定控件导出到excel

    博客分类:
  • .net
阅读更多

aspx页面代码

<div>
        <asp:GridView ID="GridView1" runat="server">
        </asp:GridView>
        <asp:Button ID="Button1" runat="server" Text="导出到Excel" OnClick="Button1_Click" />
        <!--datalist的导出-->
     <asp:DataList ID="DataList1" runat="server">
            <ItemTemplate>
                <table>
                    <tr>
                        <td><%#Eval("itemId")%>
                        </td>
                        <td>
                        <%#Eval("title")%>
                        </td>
                        <td><%#Eval("price")%>
                        </td>
                        <td><%#Eval("imageUrl")%>
                        </td>                        
                    </tr>
                </table>
            </ItemTemplate>
        </asp:DataList>
        <asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button2_Click" />
        <!--detailsView的导出-->
        <asp:DetailsView ID="DetailsView1" runat="server" Height="50px" Width="125px">
        </asp:DetailsView>
        <asp:Button ID="Button3" runat="server" Text="detailview的导出" 
            onclick="Button3_Click" />
            <!--formview的导出-->
        <asp:FormView ID="FormView1" runat="server">
           <ItemTemplate>
           <table>
                    <tr>
                        <td><%#Eval("itemId")%>
                        </td>
                        <td>
                        <%#Eval("title")%>
                        </td>
                        <td><%#Eval("price")%>
                        </td>
                        <td><%#Eval("imageUrl")%>
                        </td>                        
                    </tr>
               </table>
          </ItemTemplate> 
        </asp:FormView>
        <asp:Button ID="Button4" runat="server" Text="FormView的导出" 
            onclick="Button4_Click" />
            <!--repeater控件导出-->
        <asp:Repeater ID="Repeater1" runat="server">
        <ItemTemplate>
          <table>
                    <tr>
                        <td><%#Eval("itemId")%>
                        </td>
                        <td>
                        <%#Eval("title")%>
                        </td>
                        <td><%#Eval("price")%>
                        </td>
                        <td><%#Eval("imageUrl")%>
                        </td>                        
                    </tr>
                </table>
        </ItemTemplate>
        </asp:Repeater>
        <asp:Button ID="Button5" runat="server" Text="repeater的导出" 
            onclick="Button5_Click" />
            <!--listview控件导出-->
        <asp:ListView ID="ListView1" runat="server">
           <LayoutTemplate>           
          <table cellpadding="2" runat="server" id="tblDepartments" width="640px" cellspacing="0">           
           <tr id="itemPlaceholder" runat="server"></tr>
          </table> 
        </LayoutTemplate>
        <ItemTemplate>
          <tr id="Tr1" runat="server">            
            <td>
              <asp:Label ID="IDLabel" runat="server" Text='<%#Eval("itemId") %>' />
            </td>
            <td>
              <asp:Label ID="NameLabel" runat="server" Text='<%#Eval("title") %>' />
            </td>
            <td>
              <asp:Label ID="GroupNameLabel" runat="server" Text='<%#Eval("price") %>' />
            </td>
          </tr>
        </ItemTemplate>
        </asp:ListView>
        <asp:Button ID="Button6" runat="server" Text="listview导出" 
            onclick="Button6_Click" />
    </div>

 

后台代码:

using System;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Company.DAL;
using System.Text;

public partial class dataToExcel : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            getData();
        }
    }
    public void getData()
    {
        ItemDAL iadl = new ItemDAL();
        GridView1.DataSource= iadl.GetDataSet().Tables[0];
        GridView1.DataBind();
        DataList1.DataSource = iadl.GetDataSet().Tables[0];
        DataList1.DataBind();
        DetailsView1.DataSource = iadl.GetDataSet().Tables[0];
        DetailsView1.DataBind();
         FormView1.DataSource = iadl.GetDataSet().Tables[0];
         FormView1.DataBind();
         Repeater1.DataSource = iadl.GetDataSet().Tables[0];
         Repeater1.DataBind();
         ListView1.DataSource = iadl.GetDataSet().Tables[0];
         ListView1.DataBind();
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        DataToExcel(this.GridView1,"订单");
    }
    /// <summary>
    /// 导出到Excel
    /// </summary>
    /// <param name="gv">gridview类型</param>
    /// <param name="ExcName">导出的excel文件名字</param>
    public void DataToExcel(GridView gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
       // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    //如果没有重写方法会报错类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内    
    public override void VerifyRenderingInServerForm(Control control)
    {
        //base.VerifyRenderingInServerForm(control);
    }

    #region datalist的导出  
    public void DataToExcel(DataList gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
        // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        DataToExcel(this.DataList1, "订单2");
    }
    #endregion

    #region detailview的导出 
    public void DataToExcel(DetailsView gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
        // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    protected void Button3_Click(object sender, EventArgs e)
    {
        DataToExcel(this.DetailsView1, "订单3");
    }
   #endregion

    #region formview的导出
    public void DataToExcel(FormView gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
        // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    protected void Button4_Click(object sender, EventArgs e)
    {
        DataToExcel(this.FormView1, "订单4");
    }
    #endregion

    #region repeater的导出   
    public void DataToExcel(Repeater gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
        // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    protected void Button5_Click(object sender, EventArgs e)
    {
        DataToExcel(this.Repeater1, "订单5");
    }
    #endregion

    public void DataToExcel(ListView gv, string ExcName)
    {
        Response.Clear();
        //Response.Charset = "UTF-8";
        //Response.Charset = "GB2312"; 可以不用设置编码格式
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + ExcName + ".xls");
        //Response.ContentEncoding = System.Text.Encoding.Default;
        //Response.ContentEncoding = Encoding.UTF8;
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        //gv.HeaderStyle.Font.Bold = true;
        // gv.EnableViewState = false;       
        gv.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
    protected void Button6_Click(object sender, EventArgs e)
    {
        DataToExcel(this.ListView1, "订单6");
    }
}

 

分享到:
评论

相关推荐

    将Repeater控件数据导出到Excel或Word

    //将控件Repeater中的数据导出到Excel或Word中 //将下列代码放入需要导出数据的.aspx文件对应的.cs文件中 // private void Export(String FileType, String FileName) { Response.Clear(); Response....

    layui数据表格导出Excel插件

    layui数据表格导出Excel插件是一款为layui框架设计的实用工具,它允许用户方便地将layui数据表格中的数据导出到Excel文件中。layui是一款轻量级的前端UI框架,以其简洁、优雅的代码风格和丰富的组件库深受开发者喜爱...

    C#把数据导出为Excel格式

    最后,使用`OleDbDataAdapter`对象填充数据集,并将其绑定到DataGridView控件上。 ```csharp try { da.Fill(myDataset); this.dgvTrafficCalc.DataSource = myDataset.Tables[0]; } catch (Exception ex) { ...

    CListCtrl控件 打印 导出到Excel-通用控件.rar

    在给定的“CListCtrl控件 打印 导出到Excel-通用控件.rar”压缩包中,包含的是一个专门针对CListCtrl扩展的功能,即打印和导出到Excel的能力。 1. **CListCtrl控件的基本操作** - 插入/删除项:可以使用InsertItem...

    C#下成功登录后datagridview数据导出excel

    在这个场景中,"C#下成功登录后datagridview数据导出excel"的标题描述了一个常见的需求:用户通过登录窗口验证身份后,能够将数据显示在datagridview控件中,并且支持将这些数据导出到Excel文件中。这一过程涵盖了多...

    导出到Excel,并且自定义文件名

    本话题主要关注如何实现将GridView控件中的数据导出到Excel文件,并允许用户自定义保存的文件名。这在处理大量表格数据时非常实用,因为它提供了灵活性和易用性。 首先,让我们了解GridView控件。GridView是ASP.NET...

    第7章 数据绑定控件

    第7章 数据绑定控件 300 7.1 数据绑定技术 301 实例188 格式化订货金额和订单日期并 进行绑定 301 实例189 使用绑定表达式高亮显示搜索关键字 302 实例190 Eval()绑定图书图片并实现单击图片 进行链接 304 实例191 ...

    C#数据表中的数据导出到excel(web,WinFrom)

    ### C# 数据表中的数据导出到 Excel 的方法详解 #### 一、Web 环境下导出数据到 Excel 在 Web 开发中,经常需要将数据表中的数据导出为 Excel 文件以便用户下载。这里介绍一种使用 C# 在 ASP.NET Web 应用程序中...

    asp.net 导出GridView里的数据到Excel中

    - **GridView**: ASP.NET提供的一种用于显示数据库表或对象列表的数据绑定控件。 - **Excel**: 微软Office套件中的一个电子表格程序,广泛用于数据分析和报告。 #### 三、实现步骤 ##### 1. 页面准备 首先,需要...

    GridView中导出数据到 Excel

    导出数据到Excel的过程通常分为以下几个步骤: 1. 创建Excel文件:在Asp.Net中,我们可以使用Microsoft.Office.Interop.Excel库来创建Excel文件。首先,需要引用该库,然后实例化Excel应用程序对象,创建一个新的...

    将数据导出到Excel

    在IT行业中,数据导出是一项常见的任务,特别是将数据从数据库转移到便于分析和处理的格式,如Microsoft Excel。"将数据导出到Excel"这个主题主要涵盖了如何将存储在数据库中的信息转换为Excel电子表格的过程,这...

    DBGrid导出到Excel

    而将DBGrid中的数据导出到Excel是常见的需求,这在数据分析、报告生成或者数据共享时非常实用。下面我们将详细探讨如何实现这一功能。 首先,我们需要理解DBGrid的基本工作原理。DBGrid通常与数据库组件(如ADO、...

    连接数据表并把数据导出到excel文件中

    在这个场景中,我们看到一个使用C#编程语言、Visual Studio 2015(VS2015)和WinForms创建的项目,它涉及到与Access数据库的交互以及数据的Excel导出功能。以下是对这个项目的详细解析: 首先,我们要了解`C#`是...

    GridView 导出到 Excel文件中

    而将GridView的数据导出到Excel文件是常见的需求,这通常涉及网页到服务器端的数据处理以及文件响应。下面将详细解释如何实现这个功能。 首先,了解`VerifyRenderingInServerForm`方法。这是一个在服务器控件呈现前...

    gridview导出数据到Excel

    在这个页面上,我们将放置一个GridView控件,用于显示数据,并添加一个按钮,用于触发数据导出到Excel的操作。 在`ExcelTest.aspx.cs`的后台代码中,我们需要引用必要的命名空间,例如`System.Data.OleDb`,用于与...

    Datagridview或Dataset数据导出到excel

    本文将详细讲解如何将Datagridview中的数据导出到Excel,以及如何直接从Dataset导出数据到Excel。我们将遵循以下步骤进行操作: 1. **创建Datagridview并绑定数据** 首先,我们需要从数据库中获取数据并将其显示在...

    DATAGRIDVIEW 导出到EXCEL

    而将`DataGridView`中的数据导出到Excel是常见的需求,这通常涉及到数据处理和文件格式转换。下面将详细阐述如何实现这个功能。 首先,我们需要了解`DataGridView`的基本用法。`DataGridView`控件可以动态加载数据...

    datagridview显示sql数据并导出到excel表格源文件(包括数据更改、删除等功能,亲测可用)

    以上步骤完成后,你就拥有一个可以显示SQL数据、编辑数据、删除数据并一键导出到Excel的应用程序。请注意,为了在生产环境中使用,需要考虑更复杂的错误处理、事务管理和用户权限控制。同时,导出到Excel的部分可能...

Global site tag (gtag.js) - Google Analytics