GridViewコントロールを使って編集削除処理を行う
今回は、前回作成したプログラムを元に、GridViewコントロールで一覧表示されたデータの編集と削除を行うプログラムを作成します。
前回作成したプログラムは、こちらの記事を参照してください。
また、GridViewコントロールの詳しい内容は、以下のマイクロソフトの公式サイトを参照してください。
編集、削除処理の追加
WebForm1のデザイン画面を表示して、「TestDbSource」→「データソースの構成…」を選択します。

「データ接続の選択」で「次へ」ボタンを押下します。

「Selectステートメントの構成」で「詳細設定」ボタンを押下します。

「SQL生成の詳細オプション」の「INSERT、UPDATE、およびDELETEステートメントの生成」のチェックボックスをチェックして、「OK」ボタンを押下します。

「INSERT、UPDATE、およびDELETEステートメントの生成」にチェックが付いたことを確認して、「OK」ボタンを押下します。

WebForm1.aspxにDelete、Insert、Update処理が自動で追加されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/SmpSite.Master" CodeBehind="WebForm1.aspx.vb" Inherits="SmpWebForm3.WebForm1" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <asp:GridView ID="GridView1" runat="server" DataSourceID="TestDbSource" AutoGenerateColumns="False" DataKeyNames="Id" AllowPaging="True" AllowSorting="True" PageSize="5"> <Columns> <asp:BoundField DataField="Id" HeaderText="Id" ReadOnly="True" SortExpression="Id"></asp:BoundField> <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name"></asp:BoundField> <asp:BoundField DataField="Age" HeaderText="Age" SortExpression="Age"></asp:BoundField> </Columns> </asp:GridView> <asp:SqlDataSource runat="server" ID="TestDbSource" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [Emp]" DeleteCommand="DELETE FROM [Emp] WHERE [Id] = @Id" InsertCommand="INSERT INTO [Emp] ([Id], [Name], [Age]) VALUES (@Id, @Name, @Age)" UpdateCommand="UPDATE [Emp] SET [Name] = @Name, [Age] = @Age WHERE [Id] = @Id"> <DeleteParameters> <asp:Parameter Name="Id" Type="Int32"></asp:Parameter> </DeleteParameters> <InsertParameters> <asp:Parameter Name="Id" Type="Int32"></asp:Parameter> <asp:Parameter Name="Name" Type="String"></asp:Parameter> <asp:Parameter Name="Age" Type="Byte"></asp:Parameter> </InsertParameters> <UpdateParameters> <asp:Parameter Name="Name" Type="String"></asp:Parameter> <asp:Parameter Name="Age" Type="Byte"></asp:Parameter> <asp:Parameter Name="Id" Type="Int32"></asp:Parameter> </UpdateParameters> </asp:SqlDataSource> </asp:Content> |
「Selectステートメントの構成」に戻るので、「次へ」ボタンを押下します。

「クエリのテスト」で「完了」ボタンを押下します。

WebForm1のデザイン画面から「GridView1」を選択すると、ポップアップ画面が表示されるので、「編集を有効にする」と「削除を有効にする」をチェックします。

先頭カラムに「編集」と「削除」のリンクが追加されます。

プログラムを実行する
WebForm1.aspxを開いた状態で、Visual Studioの上部にある「IIS Express (Google Chrome)」をクリックして、プログラムを実行します。

「編集」のリンクをクリックすると、以下のようにデータの編集ができるようになります。
