将ListView中的内容以Excel导出

HTML:

<div>
     <asp:ListView ID="ListView1" runat="server">
        <ItemTemplate>
            <tr>
                <td id="Td1" runat="server" style="">
                    <asp:Label ID="idLabel" runat="server" Text='<%# Eval("name") %>' />
                    <br />
                </td>
                <td>
                    <asp:Label ID="xLabel" runat="server" Text='<%# Eval("Age") %>' />
                    <br />
                </td>
            </tr>
        </ItemTemplate>
        <LayoutTemplate>
            <table id="Table1" runat="server" border="0" style="">
                <tr runat="server" id="itemPlaceholder" />
                
            </table>
        </LayoutTemplate>
    </asp:ListView>
    </div>
<asp:Button ID="Button1" runat="server" Text="Button"  onclick="Button1_Click" />

CS:

public partial class ListView技巧_Code13 : System.Web.UI.Page
{
    DataAccess da;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["da"] == null)
        {
            da = new DataAccess();
            Session["da"] = da;
        }
        else
        {
            da = Session["da"] as DataAccess;
        }
        if (!IsPostBack)
        {
            Bind();
        }
    }
    private void Bind()
    {
        ListView1.DataSource = da.List;
        ListView1.DataBind();
    }
    private void Export(string FileType, string FileName)
    {
        Response.Charset = "GB2312";
        Response.ContentEncoding = System.Text.Encoding.UTF7;
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
        Response.ContentType = FileType;
        this.EnableViewState = false;
        StringWriter tw = new StringWriter();
        HtmlTextWriter hw = new HtmlTextWriter(tw);
        ListView1.RenderControl(hw);
        Response.Write(tw.ToString());
        Response.End();
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        Export("application/ms-excel", "employee.xls");

    }
}



posted @ 2011-08-22 16:27  lenya  阅读(170)  评论(0编辑  收藏  举报