skip to main
|
skip to sidebar
Asp.net Examples
Monday, July 28, 2008
Export to Excel Using Styles
public void ExportDataGridToExcel(System.Web.UI.Control ctrl, System.Web.HttpResponse response)<br /> <br /> {<br /> <br /> response.Clear();<br /> response.Buffer= true;<br /> <br /> response.Cache.SetCacheability(HttpCacheability.NoCache);<br /> response.ContentType = "application/vnd.ms-excel";<br /> <br /> response.AddHeader("content-disposition", "attachment;filename=Projects.xls");<br /> response.Charset = "";<br /> <br /> this.EnableViewState = false;<br /> System.IO.StringWriter oStringWriter = new System.IO.StringWriter();<br /> <br /> System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);<br /> this.ClearControls(ctrl);<br /> <br /> ctrl.RenderControl(oHtmlTextWriter);<br /> <br /> // set content type and character set to cope with european chars like the umlaut.<br /> response.Write("<meta http-equiv=Content-Type content=\"text/html; charset=utf-8\">\n");<br /> <br /> // add the style props to get the page orientation<br /> <br /> response.Write(AddExcelStyling());<br /> <br /> response.Write(oStringWriter.ToString());<br /> response.Write("</body>");response.Write("</html>");<br /> <br /> response.End();<br /> <br /> }<br /> private string AddExcelStyling()<br /> <br /> {<br /> StringBuilder sb = new StringBuilder();<br /> <br /> sb.Append("<html xmlns:o='urn:schemas-microsoft-com:office:office'\n" + "xmlns:x='urn:schemas-microsoft-com:office:excel'\n" + "xmlns='http://www.w3.org/TR/REC-html40'>\n" +<br /> "<head>\n");<br /> <br /> sb.Append("<style>\n"); sb.Append("@page"); sb.Append("{margin:.5in .75in .5in .75in;\n"); sb.Append("mso-header-margin:.5in;\n"); sb.Append("mso-footer-margin:.5in;\n"); sb.Append("mso-page-orientation:landscape;}\n"); sb.Append("</style>\n");<br /> sb.Append("<!--[if gte mso 9]><xml>\n");<br /> <br /> sb.Append("<x:ExcelWorkbook>\n");<br /> sb.Append("<x:ExcelWorksheets>\n");<br /> <br /> sb.Append("<x:ExcelWorksheet>\n");<br /> sb.Append("<x:Name>Projects 3 </x:Name>\n");<br /> <br /> sb.Append("<x:WorksheetOptions>\n");<br /> sb.Append("<x:Print>\n");<br /> <br /> sb.Append("<x:ValidPrinterInfo/>\n");<br /> sb.Append("<x:PaperSizeIndex>9</x:PaperSizeIndex>\n");<br /> <br /> sb.Append("<x:HorizontalResolution>600</x:HorizontalResolution\n"); sb.Append("<x:VerticalResolution>600</x:VerticalResolution\n"); sb.Append("</x:Print>\n");<br /> sb.Append("<x:Selected/>\n");<br /> <br /> sb.Append("<x:DoNotDisplayGridlines/>\n");<br /> sb.Append("<x:ProtectContents>False</x:ProtectContents>\n");<br /> <br /> sb.Append("<x:ProtectObjects>False</x:ProtectObjects>\n");<br /> sb.Append("<x:ProtectScenarios>False</x:ProtectScenarios>\n");<br /> <br /> sb.Append("</x:WorksheetOptions>\n");<br /> sb.Append("</x:ExcelWorksheet>\n");<br /> <br /> sb.Append("</x:ExcelWorksheets>\n");<br /> sb.Append("<x:WindowHeight>12780</x:WindowHeight>\n");<br /> <br /> sb.Append("<x:WindowWidth>19035</x:WindowWidth>\n");<br /> sb.Append("<x:WindowTopX>0</x:WindowTopX>\n");<br /> <br /> sb.Append("<x:WindowTopY>15</x:WindowTopY>\n");<br /> sb.Append("<x:ProtectStructure>False</x:ProtectStructure>\n");<br /> <br /> sb.Append("<x:ProtectWindows>False</x:ProtectWindows>\n");<br /> sb.Append("</x:ExcelWorkbook>\n");<br /> <br /> sb.Append("</xml><![endif]-->\n");<br /> sb.Append("</head>\n");<br /> <br /> sb.Append("<body>\n");<br /> return sb.ToString();<br /> <br /> }
No comments:
Post a Comment
Newer Post
Older Post
Home
Subscribe to:
Post Comments (Atom)
Categories
Ajax
ASP.NET
CSS
Javascript
SQL
Blog Archive
►
2010
(2)
►
January
(2)
►
2009
(4)
►
June
(2)
►
April
(2)
▼
2008
(58)
►
December
(2)
►
October
(17)
►
September
(3)
►
August
(4)
▼
July
(8)
Export to Excel Using Styles
Encrypting QueryStrings with .NET
Finding If the Url Exists
Prevent Caching of WebPage in Asp.net
URL Mapping in asp.net 2.0
Stock Quote & Currency Convertor Using Web service
Guard Against SQL Injection Attacks
App_Offline.htm
►
May
(1)
►
March
(5)
►
February
(5)
►
January
(13)
►
2007
(5)
►
November
(2)
►
January
(3)
More
pay per click advertising
Your Ad Here
Ads
No comments:
Post a Comment