• 获取GridView行索引


    Insus.NET为了演示这个例子,首先准好数据,创建一个类别

    Cosmetic.vb
    Imports Microsoft.VisualBasic
    
    Namespace Insus.NET
        Public Class Cosmetic
            Private _ID As Integer
            Private _Type As String
            Private _Name As String
            Private _Weight As Decimal
            Private _UM As String
    
            Public Property ID As Integer
                Get
                    Return _ID
                End Get
                Set(value As Integer)
                    _ID = value
                End Set
            End Property
    
            Public Property Type As String
                Get
                    Return _Type
                End Get
                Set(value As String)
                    _Type = 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
    
            Public Property Weight As Decimal
                Get
                    Return _Weight
                End Get
                Set(value As Decimal)
                    _Weight = value
                End Set
            End Property
            Public Property UM As String
                Get
                    Return _UM
                End Get
                Set(value As String)
                    _UM = value
                End Set
            End Property
    
            Public Sub New()
    
            End Sub
    
            Public Sub New(id As Integer, type As String, name As String, weight As Decimal, um As String)
                Me._ID = id
                Me._Type = type
                Me._Name = name
                Me._Weight = weight
                Me._UM = um
            End Sub
        End Class
    End Namespace

     
    上面创建好的只是一对象,得需用数据填充,让它有血有肉有灵魂。

    View Code
    Private Function GetData() As List(Of Cosmetic)
            Dim o As New List(Of Cosmetic)
            Dim c As New Cosmetic(1, "滋润霜", "玉兰油", 50, "g")
            o.Add(c)
    
            Dim c1 As New Cosmetic(2, "滋润霜", "雅诗兰黛", 100, "g")
            o.Add(c1)
    
            Dim c2 As New Cosmetic(3, "滋润霜", " 兰蔻", 80, "g")
            o.Add(c2)
    
            Dim c3 As New Cosmetic(4, "滋润霜", "欧莱雅", 60, "g")
            o.Add(c3)
    
            Dim c4 As New Cosmetic(5, "滋润霜", "芭比波朗", 120, "g")
            o.Add(c4)
    
            Return o
        End Function


    在aspx网页上放一个Gridview控件:

    View Code
     <asp:GridView ID="GridViewCosmetic" runat="server" Width="300" AutoGenerateColumns="false">
                <Columns>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            ID
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("ID")%>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            Type
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("Type")%>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            Name
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("Name")%>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <ItemStyle HorizontalAlign="Right" />
                        <HeaderTemplate>
                            Weight
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("Weight")%>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            UM
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("UM") %>
                        </ItemTemplate>
                    </asp:TemplateField>                
                </Columns>
            </asp:GridView>


    当然得对这个控件,进行数据绑定,引用命名空间Imports Insus.NET

    View Code
    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.GridViewCosmetic.DataSource = GetData()
            Me.GridViewCosmetic.DataBind()
        End Sub

    接下来,我们开始演示,在GridView控件最后一列,添加一列,选择列:

    1 <asp:TemplateField>
    2     <ItemTemplate>
    3         <asp:LinkButton ID="LinkButton1" runat="server" Text="选择" OnClientClick="return GetSelectedRow(this)" />
    4     </ItemTemplate>
    5 </asp:TemplateField>


    上面html代码中,有一个OnClientClick="return GetSelectedRow(this)" 客户端事件。

    View Code
     <script type="text/javascript">
            function GetSelectedRow(obj) {
                var row = obj.parentNode.parentNode;
                var rowIndex = row.rowIndex - 1;           
                alert("你选择的行索引是:" + rowIndex);
                return false;
            }
        </script>


    动画演示:

  • 相关阅读:
    Fedora 12/Debian 以root登录图形界面
    贡献一个简单的日志类
    "没有 pthread_create 的手册页条目"解决办法
    OpenBSD 下架设vsftpd
    NetSnmp初步(一):让我们的程序提供snmp服务
    linux socket接收、发送小工具(支持tcp、udp包(组播)的发送接收)
    NetSnmp初步(二):发送Notification
    netbeans添加现有源文件时自动更新Makefile依赖关系
    Fedora Core12的防火墙会过滤掉部分IP数据包,在开发调试时建议关闭防火墙
    NetSnmp初步(三):接收控制命令:实现SNMP的SET命令
  • 原文地址:https://www.cnblogs.com/insus/p/2858768.html
Copyright © 2020-2023  润新知