首先看看效果



Repeater控件,放在itemTemplate内的铵钮OnClick之后,获取Repeater的Item,itemindex,CommandArgument,CommandName以及绑定的字段值。

准备数据

复制代码 代码如下:

View Code

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

复制代码 代码如下:

View Code

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 = 5

cl.Name = “文化”

cls.Add(cl)

cl = New Catalog()

cl.ID = 6

cl.Name = “公益”

cls.Add(cl)

Return cls

End Function

在.aspx放置Repeater控件:

复制代码 代码如下:

View Code

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

<HeaderTemplate>

<table border=”1″ cellpadding=”3″ cellspacing=”0″>

<tr>

<td>ID

</td>

<td>Name

</td>

<td>Choose</td>

</tr>

</HeaderTemplate>

<ItemTemplate>

<tr>

<td>

<asp:Label ID=”LabelID” runat=”server” Text='<%# Eval(“ID”)%>’></asp:Label>

</td>

<td>

<asp:Label ID=”LabelName” runat=”server” Text='<%# Eval(“Name”)%>’></asp:Label>

</td>

<td>

<asp:Button ID=”Button1″ runat=”server” Text=”Select” OnClick=”Button1_Click” CommandArgument='<%# Eval(“ID”)%>’ CommandName=”Choose” />

</td>

</tr>

</ItemTemplate>

<FooterTemplate>

</table>

</FooterTemplate>

</asp:Repeater>

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

复制代码 代码如下:

View Code

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

接下来,我们写onclick事件,在写事件之前,先在.aspx放一个Label来显示事件结果:

复制代码 代码如下:

Process infor:

<asp:Label ID=”LabelInfo” runat=”server” Text=””></asp:Label>

复制代码 代码如下:

View Code

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

Dim btn As Button = DirectCast(sender, Button)

Dim commandArgument As String = btn.CommandArgument

Dim commandName As String = btn.CommandName

Dim item As RepeaterItem = DirectCast(btn.NamingContainer, RepeaterItem)

Dim index As Integer = item.ItemIndex

Dim id As String = DirectCast(item.FindControl(“LabelID”), Label).Text

Dim name As String = DirectCast(item.FindControl(“LabelName”), Label).Text

Me.LabelInfo.Text = String.Format(“Item index: {0}; CommandArgument: {1}; CommandName: {2}; ID: {3}; Name: {4};”, index, commandArgument, commandName, id, name)

End Sub
您可能感兴趣的文章:

  • 用Command对象和RecordSet对象向数据库增加记录哪一个更好
  • 使用Jmail及Winwebmail发信时系统记录中的错误:502 Error: command …
  • Delphi Command模式
  • asp中command的在单条记录时,有些字段显示为空的问题
  • javascript document.execCommand() 常用解析
  • asp.net gridview的Rowcommand命令中获取行索引的方法总结
  • php设计模式 Command(命令模式)
  • php设计模式 Command(命令模式)
  • 解决VS2012 Express的There was a problem sending the command to the program问题
  • bash scp command not found的解决方法
  • GridView中动态设置CommandField是否可用或可见的小例子
  • document.execCommand()的用法小结
  • pip 错误unused-command-line-argument-hard-error-in-future解决办法
  • 在RowCommand事件中获取索引值示例代码
  • ON_COMMAND_RANGE多个按钮响应一个函数的解决方法
  • C#命令模式(Command Pattern)实例教程
  • ASP基础知识Command对象讲解
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。