当前位置:编程学习 > C#/ASP.NET >>

请问LISTVIEW里面,如何知道触发的是第几行。

前台:

<asp:ListView ID="ListView1" runat="server"  DataSourceID="SqlDataSource1">
              <ItemTemplate>
<asp:Label ID="bookidLabel" runat="server" Text=<%# Eval("bookid")%</asp:Label>

<asp:Button ID="Button3" runat="server" Text="提交"   OnCommand="godel" CommandName="id"  CommandArgument=<%# Eval("bookid")%>  />
</ItemTemplate>

          
              <LayoutTemplate>
                 <div ID="itemPlaceholderContainer" runat="server" border="0" style="">
                  <div ID="itemPlaceholder" runat="server"> </div>
                </div>
              </LayoutTemplate>
            </asp:ListView>


我想知道的是,如果我点了“提交”按钮,则输入这个提交按钮是在该ListView 中处于第几行。

我的方法是:


 Protected Sub godel(sender As Object, e As CommandEventArgs)

        Dim n As Integer = 0
        For i = 0 To (ListView1.Items.Count - 1)
            Dim allmoneyLabel As Label = CType(ListView1.Items(i).FindControl("bookidLabel"), Label)
            If allmoneyLabel.Text = e.CommandArgument.ToString Then
                n = i

            End If
        Next
        Response.Write(n)

    End Sub






请问还有更“优雅”的方法吗?
比如ListView1.Items.IndexOf 或
ListView1.SelectedIndex什么之类的?

谢谢!
--------------------编程问答-------------------- 没有人知道吗? --------------------编程问答--------------------
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,