ASP.Netのお勉強

GridViewにボタンを追加@ASP.Net

GridViewにボタンを追加します。
プロパティの設定をして、CommandName="Select"とします。

以下は、ボタンをクリックした時に、
ラベルにクリックされた列の番号を表示しています。
(GridViewのSelectedIndexChangedをハンドルしたメソッドを利用します。)

●aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>GridView</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:GridView ID="GridView1" runat="server">
            <Columns>
                <asp:ButtonField ButtonType="Button" CommandName="Select" HeaderText="選択" ShowHeader="True"
                    Text="ボタン" />
            </Columns>
        </asp:GridView>

        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </form>
</body>
</html>


●vb

Imports System.Data

Partial Class _Default
    Inherits System.Web.UI.Page


    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        'usr.xmlの内容を読み込み、DataSetに展開します。
        Dim dtSet As DataSet = New DataSet()
        dtSet.ReadXml(Server.MapPath("usr.xml"))
        'グリッドに配置して、DataBind処理
        Me.GridView1.DataSource = dtSet.Tables("USERINFO").DefaultView
        Me.GridView1.DataBind()

    End Sub

    'ボタンクリック時の処理
    Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged
        Me.Label1.Text = GridView1.SelectedIndex
    End Sub
End Class


●usr.xml

<?xml version="1.0" ?>
<USERS>
    <USERINFO>
        <ID>1</ID>
        <NAME>名前1</NAME>
    </USERINFO>
    <USERINFO>
        <ID>2</ID>
        <NAME>名前2</NAME>
    </USERINFO>
</USERS>

Copyright (C) ASP.Netのお勉強. All Rights Reserved.