国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

獲取Repeter的Item和ItemIndex/CommandArgument實現思路與代碼

2024-07-10 13:18:10
字體:
來源:轉載
供稿:網友
首先看看效果:

獲取Repeter的Item和ItemIndex/CommandArgument實現思路與代碼


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 runat="server">
<HeaderTemplate>
<table cellpadding="3" cellspacing="0">
<tr>
<td>ID
</td>
<td>Name
</td>
<td>Choose</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label runat="server" Text='<%# Eval("ID")%>'></asp:Label>
</td>
<td>
<asp:Label runat="server" Text='<%# Eval("Name")%>'></asp:Label>
</td>
<td>
<asp:Button runat="server" Text="Select" 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 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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 望江县| 图们市| 蓬莱市| 衡南县| 中江县| 收藏| 南江县| 海口市| 神木县| 乌鲁木齐县| 西藏| 桐柏县| 珠海市| 连山| 周宁县| 临高县| 丹棱县| 突泉县| 上杭县| 四平市| 深圳市| 建德市| 瑞安市| 云阳县| 呈贡县| 巴林右旗| 商水县| 沂南县| 晋州市| 安远县| 临邑县| 麦盖提县| 青铜峡市| 嘉善县| 崇左市| 合江县| 新宁县| 诸暨市| 大庆市| 南康市| 开封市|