获取GridView行索引

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

获取GridView行索引 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

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

获取GridView行索引 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控件:

获取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

获取GridView行索引 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)" 客户端事件。

获取GridView行索引 View Code
 <script type="text/javascript">

        function GetSelectedRow(obj) {

            var row = obj.parentNode.parentNode;

            var rowIndex = row.rowIndex - 1;           

            alert("你选择的行索引是:" + rowIndex);

            return false;

        }

    </script>


动画演示:

获取GridView行索引

 

你可能感兴趣的:(GridView)