Implementado no seguinte evento de clique de botão:
private void btnMIME_Click (remetente do objeto, System.EventArgs e)
{
BindData();
Response.ContentType = "aplicativo/vnd.ms-excel";
Response.AddHeader("Disposição de conteúdo", "inline;filename="
+ HttpUtility.UrlEncode("Baixar arquivo.xls",Encoding.UTF8 ));
//Se a saída for Word, modifique-a para o código a seguir
//Response.ContentType = "aplicativo/ms-word"
//Response.AddHeader("Disposição de conteúdo", "inline;nome do arquivo=test.doc")
StringBuilder sb=new StringBuilder();
System.IO.StringWriter sw = novo System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = novo System.Web.UI.HtmlTextWriter (sw);
sb.Append("<html><corpo>");
dgShow.RenderControl(hw);
sb.Append("</body></html>");
Response.Write(sb.ToString());
Response.End();
}
Nota: 1. Se houver uma coluna de botão no DataGrid, ela deverá ser ocultada antes da exportação.
2. Se o DataGrid tiver paginação e você quiser imprimir todos os dados, você deve primeiro cancelar a paginação