关于RepeaterCommandEventargs的问题.

nnh 2006-03-18 10:57:34
在学asp.net技术内幕这本书,有个例子中的一条语句不是很明白,请大家帮忙看看.

代码:
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<Script Runat="Server">

Sub Page_Load
If Not IsPostBack Then
Dim conNorthwind As SqlConnection
Dim cmdSelect As SqlCommand
Dim dtrCategories As SqlDataReader

conNorthwind = New SqlConnection( "Server=localhost;UID=sa;PWD=;Database=Northwind" )
cmdSelect = New SqlCommand( "Select CategoryName From Categories", conNorthwind )
conNorthwind.Open()
dtrCategories = cmdSelect.ExecuteReader()

rptCategories.DataSource = dtrCategories
rptCategories.DataBind()

dtrCategories.Close()
conNorthwind.Close()
End If
End Sub

Sub Button_Click( s As Object, e As RepeaterCommandEventArgs )
Dim lbtnSelected As LinkButton

lbtnSelected = e.Item.Controls( 1 )
lblCategory.Text = "You selected " & lbtnSelected.Text
End Sub

</Script>

<html>
<head><title>LinkButtonList.aspx</title></head>
<body>
<form Runat="Server">

<asp:Repeater
ID="rptCategories"
OnItemCommand="Button_Click"
Runat="Server">

<ItemTemplate>
<li>
<asp:LinkButton
Text='<%# Container.DataItem( "CategoryName" ) %>'
Runat="Server" />
</ItemTemplate>

<ItemTemplate>
<li>
<asp:LinkButton
Text='<%# Container.DataItem( "CategoryName" ) %>'
Runat="Server" />
</ItemTemplate>
</asp:Repeater>

<p>
<asp:Label
ID="lblCategory"
Runat="Server" />

</form>
</body>
</html>
========================

其中的 lbtnSelected = e.Item.Controls( 1 ) ,为什么要用 1 呢?请大家帮忙解释一下,谢谢.
...全文
206 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nnh 2006-03-20
  • 打赏
  • 举报
回复
大家帮帮忙呀.谢谢.
nnh 2006-03-18
  • 打赏
  • 举报
回复
上边的代码
<ItemTemplate>
<li>
<asp:LinkButton
Text='<%# Container.DataItem( "CategoryName" ) %>'
Runat="Server" />
</ItemTemplate>

<ItemTemplate>
<li>
<asp:LinkButton
Text='<%# Container.DataItem( "CategoryName" ) %>'
Runat="Server" />
</ItemTemplate>

源代码只有一个LinkButton,现在我另加上了相同一个LinkButton.前边没注意看.
jimu8130 2006-03-18
  • 打赏
  • 举报
回复
这表明item这个结构(我自己的理解)controls结构(控件结构)包含两个控件(一个是专门显示的label标签(通常隐藏,看不出来),还有一个就是按钮)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧