Repeater控件数据导出Excel(附演示动画)

  本演示中,我们实现这个Repeater控件数据导出Excel的功能。

  我们准备一个对象

  

复制代码 代码如下:

  Imports Microsoft.VisualBasic

  Namespace Insus.NET

  Public Class Catalog

  Private _ID As Integer

  Private _Name As String

  Public Property ID As Integer

  Get

  Return _ID

  End Get

  Set(value As Integer)

  _ID = value

  End Set

  End Property

  Public Property Name As String

  Get

  Return _Name

  End Get

  Set(value As String)

  _Name = value

  End Set

  End Property

  End Class

  End Namespace

  准备数据来填充上面创建好的对象

  

复制代码 代码如下:

  Private Function GetData() As List(Of Catalog) Dim cls As New List(Of Catalog) Dim cl As Catalog = New Catalog() cl.ID = 1 cl.Name = "唇膏" cls.Add(cl) cl = New Catalog() cl.ID = 2 cl.Name = "胭脂" cls.Add(cl) cl = New Catalog() cl.ID = 3 cl.Name = "化妆水" cls.Add(cl) cl = New Catalog() cl.ID = 4 cl.Name = "护手霜" cls.Add(cl) Return cls End Function

  在.aspx页面拉一个Repeater控件

  

复制代码 代码如下:

  <asp:Repeater ID="RepeaterCatalog" runat="server">

  <HeaderTemplate>

  <table border="1" cellpadding="3" cellspacing="0">

  <tr>

  <td>ID

  </td>

  <td>Name

  </td>

  </tr>

  </HeaderTemplate>

  <ItemTemplate>

  <tr>

  <td>

  <%# Eval("ID")%>

  </td>

  <td>

  <%# Eval("Name")%>

  </td>

  </tr>

  </ItemTemplate>

  <FooterTemplate>

  </table>

  </FooterTemplate>

  </asp:Repeater>

  然在.aspx.vb为Repeater控件绑定数据

  

复制代码 代码如下:

  Imports Insus.NET

  Partial Class Default2

  Inherits System.Web.UI.Page

  Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load

  If Not IsPostBack Then

  Data_Binding()

  End If

  End Sub

  Private Sub Data_Binding()

  Me.RepeaterCatalog.DataSource = GetData()

  Me.RepeaterCatalog.DataBind()

  End Sub

  End Class

  ok,一切准备绪,我们在.aspx拉一个铵钮,让用户点击此铵钮时,能对Repeater控件的数据导出Excel。

  

复制代码 代码如下:

  <asp:Button ID="Button1" runat="server" Text="Export to Excel" OnClick="Button1_Click" />

  铵钮拉好,我们要去.aspx.vb写onClick事件,在写之前,首先下载一个InsusExportToExcel Library 解压之后放入BIN目录中。

  

复制代码 代码如下:

  Protected Sub Button1_Click(sender As Object, e As EventArgs)

  Dim obj As New InsusExportToExcel() '实例化对象。

  obj.ExportToExcel(Me.RepeaterCatalog, "catalog") '传入Repeater控件以入导出的Excel文件名。

  End Sub

  当然最后,少不了演示

Repeater控件数据导出Excel(附演示动画)