繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> Asp.Net开发 >> DataGrid中的数据导入到Word和Excel_VB

DataGrid中的数据导入到Word和Excel_VB

2007-08-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:Imports System Imports System.Collections Imports System.ComponentModel Imports System.Data Imports System.Drawing Imports System.Web Imports System.Web.SessionState Imports System.Web.UI Imports ...
关键字:DataGrid 数据 Excel Word VB

Imports System

Imports System.Collections

Imports System.ComponentModel

Imports System.Data

Imports System.Drawing

Imports System.Web

Imports System.Web.SessionState

Imports System.Web.UI

Imports System.Web.UI.WebControls

Imports System.Web.UI.HTMLControls

Imports System.IO

Imports System.Data.SqlClient

Imports System.Text

Public Class WebForm1

Inherits System.Web.UI.Page

#Region " Web 窗体设计器生成的代码 "

'该调用是 Web 窗体设计器所必需的。

Private Sub InitializeComponent()

End Sub

Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid

Protected WithEvents Btn_Import_Excel As System.Web.UI.WebControls.Button

Protected WithEvents BtnImportword As System.Web.UI.WebControls.Button

'注意: 以下占位符声明是 Web 窗体设计器所必需的。

'不要删除或移动它。

Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init

'CODEGEN: 此方法调用是 Web 窗体设计器所必需的

'不要使用代码编辑器修改它。

InitializeComponent()

End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

'在此处放置初始化页的用户代码

CreateDataSet()

End Sub

Private Sub ExportDataGrid(ByVal FileType As String, ByVal FileName As String) '从DataGrid导出

Response.Charset = "GB2312"

Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312")

Response.AppendHeader("Content-Disposition", "attachment;filename=" & HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8))

Response.ContentType = FileType

Me.EnableViewState = False

Dim tw As System.IO.StringWriter

tw = New System.IO.StringWriter

Dim hw As System.Web.UI.HTMLTextWriter

hw = New HTMLTextWriter(tw)

DataGrid1.RenderControl(hw)

Response.Write(tw.ToString())

Response.End()

End Sub

Private Sub CreateDataSet() '创建DataSet

Dim myDataSet As DataSet

myDataSet = New DataSet("aNewDataSet")

Dim table1 As DataTable

table1 = MakeTable("ID", "Name")

myDataSet.Tables.Add(table1)

DataGrid1.DataSource = myDataSet

DataGrid1.DataBind()

End Sub

Private Function MakeTable(ByVal c1Name As String, ByVal c2Name As String) As DataTable '创建表

Dim i As Integer

Dim myTable As New DataTable

Dim myColumn As DataColumn

' Add two DataColumns

myColumn = New DataColumn(c1Name, System.Type.GetType("System.Int32")) '创建字段和设置类型

myTable.Columns.Add(myColumn)

myColumn = New DataColumn(c2Name, System.Type.GetType("System.String"))

myTable.Columns.Add(myColumn)

Dim Dr As DataRow

For i = 1 To 10

Dr = myTable.NewRow()

Dr(0) = i

Dr(1) = "Name" + i.ToString()

myTable.Rows.Add(Dr)

Next i

MakeTable = myTable

End Function

Private Sub BtnImportword_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnImportword.Click

Call ExportDataGrid("application/ms-word", "指数列表.doc") '导到word

End Sub

Private Sub Btn_Import_Excel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Import_Excel.Click

Call ExportDataGrid("application/ms-Excel", "指数列表.xls") '导到Excel

End Sub

End Class

责任编辑:admin
相关文章