_
Public Class ExportExcel
Private s As New StringBuilder()
'/ <summary>
'/ Export Excel use GridView data
'/ </summary>
'/ <p
aram name="Typename"></p
aram>
'/ <p
aram name="TempGrid"></p
aram>
Public Shared Sub GenerateByGridView(Typename As String,TempGrid As GridView)
HttpContext.Current.Response.Clear()
'HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.Charset = "utf-8"
Dim Filename As String = Typename + ".xls"
HttpContext.Current.Response.AppendHeader("Content-
disposition","online;filename=" + Filename)
HttpContext.Current.Response.ContentEncoding = Sy
stem.Text.Encoding.GetEncoding("utf-8")
HttpContext.Current.Response.ContentType = "application/ms-excel"
'this.EnableViewState = false;
Dim oStringWriter As New Sy
stem.IO.StringWriter()
Dim oHtmlTextWriter As New Sy
stem.Web.UI.HtmlTextWriter(oStringWriter)
TempGrid.RenderControl(oHtmlTextWriter)
HttpContext.Current.Response.Write(oStringWriter.ToString())
HttpContext.Current.Response.End()
End Sub 'GenerateByGridView
'/ <summary>
'/ Export Excel use Html string data
'/ </summary>
'/ <p
aram name="Typename"></p
aram>
'/ <p
aram name="TempHtml"></p
aram>
Public Shared Sub GenerateByHtmlString(Typename As String,TempHtml As String)
HttpContext.Current.Response.Clear()
HttpContext.Current.Response.Buffer = True
HttpContext.Current.Response.Charset = "utf-8"
Dim Filename As String = Typename + ".xls"
HttpContext.Current.Response.AppendHeader("Content-
disposition","online;filename=" + Filename)
HttpContext.Current.Response.ContentEncoding = Sy
stem.Text.Encoding.GetEncoding("utf-8")
HttpContext.Current.Response.ContentType = "application/ms-excel"
'this.EnableViewState = false;
HttpContext.Current.Response.Write(TempHtml)
HttpContext.Current.Response.End()
End Sub 'GenerateByHtmlString
'/ <summary>
'/
'/ </summary>
'/ <p
aram name="Typename"></p
aram>
'/ <p
aram name="TempHtml"></p
aram>
Public Sub CreateExcelWithMode(TableRows As Integer,TableColumns As Integer,FileName As String)
Dim TableString As String = ""
TableString += TableStart(TableRows,TableColumns)
TableString += s.ToString()
TableString += TableEnd()
Dim ModePath As String = HttpContext.Current.Server.MapPath("~/Refdll/ExcelMode.xml")
Dim xmlDoc As New XmlDocument()
xmlDoc.Load(ModePath)
Dim ExcelXmlStr As String = xmlDoc.InnerXml
ExcelXmlStr = ExcelXmlStr.Insert(ExcelXmlStr.IndexOf("</Worksheet>"),TableString)
GenerateByHtmlString(FileName,ExcelXmlStr)
End Sub 'CreateExcelWithMode
'
'T
odo: Error processing original source shown below
'
'
'-----------^--- Pre-processor directives not translated
Private Function TableStart(rows As Integer,columns As Integer) As String
'
'T
odo: Error processing original source shown below
'
'
'--^--- Unexpected pre-processor directive
Dim TableString As String = ""
TableString += "<Table ss:ExpandedRowCount=""" + rows + """ ss:ExpandedColumnCount=""" + columns + """ x:FullColumns=""1"ControlChars.Lf
TableString += "x:FullRows=""1"" ss:DefaultColumnWidth=""70"" ss:DefaultRowHeight=""14.25"">" + ControlChars.Lf
Return TableString
End Function 'TableStart
Private Function TableEnd() As String
Dim TableString As String = ""
TableString += "</Table>" + ControlChars.Lf
Return TableString
End Function 'TableEnd
Public Sub RowStart()
s.Append("<Row ss:AutoFitHeight=""0"">" + ControlChars.Lf)
End Sub 'RowStart
Public Sub RowEnd()
s.Append("</Row>" + ControlChars.Lf)
End Sub 'RowEnd
Public Sub CellWithoutFormula(DataType As String,Data As String)
s.Append(("<Cell><Data ss:Type=""" + DataType + """>" + Data + "</Data></Cell>" + ControlChars.Lf))
End Sub 'CellWithoutFormula
Public Sub CellWithFormula(DataType As String,Formula As String)
s.Append(("<Cell ss:Formula=""=" + Formula + """><Data ss:Type=""" + DataType + """></Data></Cell>" + ControlChars.Lf))
End Sub 'CellWithFormula
End Class 'ExportExcel '
'T
odo: Error processing original source shown below
'
'
'-----------^--- Pre-processor directives not translated
'
'T
odo: Error processing original source shown below
'
'
'--^--- Unexpected pre-processor directive