| Here is the complete code to Export GridView to Excel: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient;
public partial class ExportGridView : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { GridView1.DataSource = BindData(); GridView1.DataBind(); } }
private string ConnectionString {
get { return @"Server=localhost;Database=Northwind; Trusted_Connection=true"; }
}
private DataSet BindData() { // make the query string query = "SELECT * FROM Categories"; SqlConnection myConnection = new SqlConnection(ConnectionString); SqlDataAdapter ad = new SqlDataAdapter(query, myConnection); DataSet ds = new DataSet(); ad.Fill(ds, "Categories"); return ds;
}
protected void Button1_Click(object sender, EventArgs e) { Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=FileName.xls");
Response.Charset = "";
// If you want the option to open the Excel file without saving than
// comment out the line below
// Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
GridView1.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
}
public override void VerifyRenderingInServerForm(Control control) {
// Confirms that an HtmlForm control is rendered for the specified ASP.NET server control at run time.
} }
powered by IMHO |
Print | posted @ Wednesday, December 21, 2005 11:06 PM