DetailsViewCommandEventHandler デリゲートとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > DetailsViewCommandEventHandler デリゲートの意味・解説 

DetailsViewCommandEventHandler デリゲート

メモ : このデリゲートは、.NET Framework version 2.0新しく追加されたものです。

DetailsView コントロールの ItemCommand イベント処理するメソッド表します

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Delegate Sub DetailsViewCommandEventHandler
 ( _
    sender As Object, _
    e As DetailsViewCommandEventArgs _
)
Dim instance As New DetailsViewCommandEventHandler(AddressOf
 HandlerMethod)
public delegate void DetailsViewCommandEventHandler
 (
    Object sender,
    DetailsViewCommandEventArgs e
)
public delegate void DetailsViewCommandEventHandler
 (
    Object^ sender, 
    DetailsViewCommandEventArgs^ e
)
/** @delegate */
public delegate void DetailsViewCommandEventHandler
 (
    Object sender, 
    DetailsViewCommandEventArgs e
)
JScript では、デリゲート使用できますが、新規に宣言することはできません。

パラメータ

sender

イベントソース

e

イベント データ格納している DetailsViewCommandEventArgs。

解説解説
使用例使用例

DetailsViewCommandEventHandler デリゲートを、プログラムによって DetailsView コントロールItemCommand イベント追加する方法コード例次に示します。この例ではシングル ファイルコーディング モデル使用します

<%@ page language="VB" %>

<script runat="server">
  
  Sub Page_Load(ByVal sender As
 Object, ByVal e As EventArgs)

    ' Create a new DetailsView object.
    Dim customerDetailsView As New
 DetailsView()

    ' Set the DetailsView object's properties.
    customerDetailsView.ID = "CustomerDetailsView"
    customerDetailsView.DataSourceID = "DetailsViewSource"
    customerDetailsView.AutoGenerateRows = True
    customerDetailsView.AllowPaging = True
    
    Dim keyArray() As String
 = {"CustomerID"}
    customerDetailsView.DataKeyNames = keyArray
    
    ' Add a button field to the DetailsView control.
    Dim field As New ButtonField()
    field.ButtonType = ButtonType.Link
    field.CausesValidation = False
    field.Text = "Add to List"
    field.CommandName = "Add"

    customerDetailsView.Fields.Add(field)

    ' Programmatically register the event-handling method
    ' for the ItemDeleting event of a DetailsView control.
    AddHandler customerDetailsView.ItemCommand, _
      AddressOf CustomerDetailsView_ItemCommand

    ' Add the DetailsView object to the Controls collection
    ' of the PlaceHolder control.
    DetailsViewPlaceHolder.Controls.Add(customerDetailsView)

  End Sub
  
  Sub CustomerDetailsView_ItemCommand(ByVal
 sender As Object, _
    ByVal e As DetailsViewCommandEventArgs)

    ' Use the CommandName property to determine which button
    ' was clicked. 
    If e.CommandName = "Add" Then

      ' Get the DetailsView control that raised the event.
      Dim customerDetailsView As DetailsView
 = _
        CType(e.CommandSource, DetailsView)

      ' Add the current customer to the customer list. 

      ' Get the row that contains the company name. In this
      ' example, the company name is in the second row (index 1)  
      ' of the DetailsView control.
      Dim row As DetailsViewRow = customerDetailsView.Rows(1)

      ' Get the company's name from the appropriate cell.
      ' In this example, the company name is in the second cell  
      ' (index 1) of the row.
      Dim name As String
 = row.Cells(1).Text

      ' Create a ListItem object with the company name.
      Dim item As New ListItem(name)

      ' Add the ListItem object to the ListBox, if the 
      ' item doesn't already exist.
      If Not CustomerListBox.Items.Contains(item)
 Then
      
        CustomerListBox.Items.Add(item)
        
      End If

    End If

  End Sub
  
</script>

<html>
  <body>
    <form runat="server">
    
      <h3>DetailsViewCommandEventHandler Example</h3>
      
      <!-- Use a PlaceHolder control as the container for
 the -->
      <!-- dynamically generated DetailsView control.         -->       
      <asp:placeholder id="DetailsViewPlaceHolder"
        runat="server"/>
      
      <br/><br/>
      
      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>
      
      <!-- This example uses Microsoft SQL Server and connects
  -->
      <!-- to the Northwind sample database. Use an ASP.NET
     -->
      <!-- expression to retrieve the connection string
 value   -->
      <!-- from the web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], 
          [City], [PostalCode], [Country] From [Customers]"
        connectionstring=
            "<%$ ConnectionStrings:NorthWindConnectionString%>"
 
        runat="server"/>  
  
    </form>
  </body>
</html>
<%@ page language="C#" %>

<script runat="server">
  
  void Page_Load(Object sender, EventArgs e)
  {

    // Create a new DetailsView object.
    DetailsView customerDetailsView = new DetailsView();

    // Set the DetailsView object's properties.
    customerDetailsView.ID = "CustomerDetailsView";
    customerDetailsView.DataSourceID = "DetailsViewSource";
    customerDetailsView.AutoGenerateRows = true;
    customerDetailsView.AllowPaging = true;
    customerDetailsView.DataKeyNames = new String[1] { "CustomerID"
 };

    // Add a button field to the DetailsView control.
    ButtonField field = new ButtonField();
    field.ButtonType = ButtonType.Link;
    field.CausesValidation = false;
    field.Text = "Add to List";
    field.CommandName="Add";

    customerDetailsView.Fields.Add(field);

    // Programmatically register the event-handling method
    // for the ItemDeleting event of a DetailsView control.
    customerDetailsView.ItemCommand 
      += new DetailsViewCommandEventHandler( 
      this.CustomerDetailsView_ItemCommand);

    // Add the DetailsView object to the Controls collection
    // of the PlaceHolder control.
    DetailsViewPlaceHolder.Controls.Add(customerDetailsView);

  }
  
  void CustomerDetailsView_ItemCommand(Object sender, 
    DetailsViewCommandEventArgs e)
  {

    // Use the CommandName property to determine which button
    // was clicked. 
    if (e.CommandName == "Add")
    {
      // Get the DetailsView control that raised the event.
      DetailsView customerDetailsView = (DetailsView)e.CommandSource;

      // Add the current customer to the customer list. 

      // Get the row that contains the company name. In this
      // example, the company name is in the second row (index 1)  
      // of the DetailsView control.
      DetailsViewRow row = customerDetailsView.Rows[1];

      // Get the company's name from the appropriate cell.
      // In this example, the company name is in the second cell  
      // (index 1) of the row.
      String name = row.Cells[1].Text;

      // Create a ListItem object with the company name.
      ListItem item = new ListItem(name);

      // Add the ListItem object to the ListBox, if the 
      // item doesn't already exist.
      if (!CustomerListBox.Items.Contains(item))
      {
        CustomerListBox.Items.Add(item);
      }

    }

  }
  
</script>

<html>
  <body>
    <form runat="server">
    
      <h3>DetailsViewCommandEventHandler Example</h3>
      
      <!-- Use a PlaceHolder control as the container for the
 -->
      <!-- dynamically generated DetailsView control.         -->       
      <asp:placeholder id="DetailsViewPlaceHolder"
        runat="server"/>
      
      <br/><br/>
      
      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>
      
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value
   -->
      <!-- from the web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], 
          [City], [PostalCode], [Country] From [Customers]"
        connectionstring=
            "<%$ ConnectionStrings:NorthWindConnectionString%>" 

        runat="server"/>  
  
    </form>
  </body>
</html>

前の例の分離コード コーディング モデル次のコード例示します。この例を正常に動作させるには、以下のコード関連付けられた分離コード ファイルコピーする必要があります

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

<html>
  <body>
    <form id="Form1" runat="server">
    
      <h3>DetailsViewCommandEventHandler Example</h3>
      
      <!-- Use a PlaceHolder control as the container for
 the -->
      <!-- dynamically generated DetailsView control.         -->       
      <asp:placeholder id="DetailsViewPlaceHolder"
        runat="server"/>
      
      <br/><br/>
      
      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>
      
      <!-- This example uses Microsoft SQL Server and connects
  -->
      <!-- to the Northwind sample database. Use an ASP.NET
     -->
      <!-- expression to retrieve the connection string
 value   -->
      <!-- from the web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address],
 [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
 
        runat="server"/>  
  
    </form>
  </body>
</html>
<%@ Page Language="C#" AutoEventWireup="true"
  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<html>
  <body>
    <form id="Form1" runat="server">
    
      <h3>DetailsViewCommandEventHandler Example</h3>
      
      <!-- Use a PlaceHolder control as the container for the
 -->
      <!-- dynamically generated DetailsView control.         -->       
      <asp:placeholder id="DetailsViewPlaceHolder"
        runat="server"/>
      
      <br/><br/>
      
      Selected Customers:<br/>
      <asp:listbox id="CustomerListBox"
        runat="server"/>
      
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value
   -->
      <!-- from the web.config file.                            -->
      <asp:sqldatasource id="DetailsViewSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], 
          [City], [PostalCode], [Country] From [Customers]"
        connectionstring="
          <%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>  
  
    </form>
  </body>
</html>

前の例の分離コード ファイルコード例次に示します

Partial Class DefaultVB
    Inherits System.Web.UI.Page

    Sub Page_Load(ByVal sender As
 Object, ByVal e As EventArgs) Handles Me.Load

        ' Create a new DetailsView object.
        Dim customerDetailsView As New
 DetailsView()

        ' Set the DetailsView object's properties.
        customerDetailsView.ID = "CustomerDetailsView"
        customerDetailsView.DataSourceID = "DetailsViewSource"
        customerDetailsView.AutoGenerateRows = True
        customerDetailsView.AllowPaging = True

        Dim keyArray() As String
 = {"CustomerID"}
        customerDetailsView.DataKeyNames = keyArray

        ' Add a button field to the DetailsView control.
        Dim field As New
 ButtonField()
        field.ButtonType = ButtonType.Link
        field.CausesValidation = False
        field.Text = "Add to List"
        field.CommandName = "Add"

        customerDetailsView.Fields.Add(field)

        ' Programmatically register the event-handling method
        ' for the ItemDeleting event of a DetailsView control.
        AddHandler customerDetailsView.ItemCommand, AddressOf
 CustomerDetailsView_ItemCommand

        ' Add the DetailsView object to the Controls collection
        ' of the PlaceHolder control.
        DetailsViewPlaceHolder.Controls.Add(customerDetailsView)

    End Sub

    Sub CustomerDetailsView_ItemCommand(ByVal
 sender As Object, ByVal
 e As DetailsViewCommandEventArgs)

        ' Use the CommandName property to determine which button
        ' was clicked. 
        If e.CommandName = "Add" Then

            ' Get the DetailsView control that raised the event.
            Dim customerDetailsView As DetailsView
 = CType(sender, DetailsView)

            ' Add the current customer to the customer list. 

            ' Get the row that contains the company name. In this
            ' example, the company name is in the second row (index
 1)  
            ' of the DetailsView control.
            Dim row As DetailsViewRow = customerDetailsView.Rows(1)

            ' Get the company's name from the appropriate cell.
            ' In this example, the company name is in the second cell
  
            ' (index 1) of the row.
            Dim name As String
 = row.Cells(1).Text

            ' Create a ListItem object with the company name.
            Dim item As New
 ListItem(name)

            ' Add the ListItem object to the ListBox, if the 
            ' item doesn't already exist.
            If Not CustomerListBox.Items.Contains(item)
 Then

                CustomerListBox.Items.Add(item)

            End If

        End If

    End Sub

End Class
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
 
{
    protected void Page_Load(object sender,
 EventArgs e)
    {
        // Create a new DetailsView object.
        DetailsView customerDetailsView = new DetailsView();

        // Set the DetailsView object's properties.
        customerDetailsView.ID = "CustomerDetailsView";
        customerDetailsView.DataSourceID = "DetailsViewSource";
        customerDetailsView.AutoGenerateRows = true;
        customerDetailsView.AllowPaging = true;
        customerDetailsView.DataKeyNames = new String[1] { "CustomerID"
 };

        // Add a button field to the DetailsView control.
        ButtonField field = new ButtonField();
        field.ButtonType = ButtonType.Link;
        field.CausesValidation = false;
        field.Text = "Add to List";
        field.CommandName = "Add";

        customerDetailsView.Fields.Add(field);

        // Programmatically register the event-handling method
        // for the ItemDeleting event of a DetailsView control.
        customerDetailsView.ItemCommand += new DetailsViewCommandEventHandler(this.CustomerDetailsView_ItemCommand);

        // Add the DetailsView object to the Controls collection
        // of the PlaceHolder control.
        DetailsViewPlaceHolder.Controls.Add(customerDetailsView);
    }

    void CustomerDetailsView_ItemCommand(Object sender, DetailsViewCommandEventArgs
 e)
    {

        // Use the CommandName property to determine which button
        // was clicked. 
        if (e.CommandName == "Add")
        {
            // Get the DetailsView control that raised the event.
            DetailsView customerDetailsView = (DetailsView)sender;

            // Add the current customer to the customer list. 

            // Get the row that contains the company name. In this
            // example, the company name is in the second row (index
 1)  
            // of the DetailsView control.
            DetailsViewRow row = customerDetailsView.Rows[1];

            // Get the company's name from the appropriate cell.
            // In this example, the company name is in the second cell
  
            // (index 1) of the row.
            String name = row.Cells[1].Text;

            // Create a ListItem object with the company name.
            ListItem item = new ListItem(name);

            // Add the ListItem object to the ListBox, if the 
            // item doesn't already exist.
            if (!CustomerListBox.Items.Contains(item))
            {
                CustomerListBox.Items.Add(item);
            }

        }

    }
}

DetailsViewCommandEventHandler デリゲートを、宣言によって DetailsView コントロールItemCommand イベント追加する方法コード例次に示します

<%@ Page Language="VB" %>

<script runat="server">

  Sub CustomerDetailView_ItemCommand(ByVal
 sender As Object, ByVal
 e As DetailsViewCommandEventArgs)
    
        ' Use the CommandName property to determine which button
        ' was clicked. 
        If e.CommandName = "Add" Then

            ' Add the current store to the contact list. 
     
            ' Get the row that contains the store name. In this
            ' example, the store name is in the second row (index 1)
  
            ' of the DetailsView control.
            Dim row As DetailsViewRow = CustomerDetailView.Rows(1)
      
            ' Get the store's name from the appropriate cell.
            ' In this example, the store name is in the second cell
  
            ' (index 1) of the row.
            Dim name As String
 = row.Cells(1).Text

            ' Create a ListItem object with the store's name.
            Dim item As New
 ListItem(name)

            ' Add the ListItem object to the ListBox, if the 
            ' item doesn't already exist.
            If Not ContactListBox.Items.Contains(item)
 Then
      
                ContactListBox.Items.Add(item)
      
            End If
        
        End If
    
    End Sub

</script>

<html>
<body>
    <form id="Form1" runat="server">
        <h3>
            DetailsView ItemCommand Example</h3>
        <asp:DetailsView ID="CustomerDetailView"
 
            DataSourceID="DetailsViewSource"
            AutoGenerateRows="false" 
            DataKeyNames="CustomerID" 
            AllowPaging="true" 
            OnItemCommand="CustomerDetailView_ItemCommand"
            runat="server">
            
            <FieldHeaderStyle BackColor="Navy"
 ForeColor="White" />
            
            <Fields>
                <asp:BoundField DataField="CustomerID"
 HeaderText="Store ID" />
                <asp:BoundField DataField="CompanyName"
 HeaderText="Store Name" />
                <asp:BoundField DataField="City"
 HeaderText="City" />
                <asp:ButtonField CommandName="Add"
 Text="Add Contact" />
            </Fields>
        </asp:DetailsView>
        
        <hr />
        
        Contacts:<br />
        <asp:ListBox ID="ContactListBox" runat="server"
 />
        <!-- This example uses Microsoft SQL Server and connects
  -->
        <!-- to the Northwind sample database. Use an ASP.NET
     -->
        <!-- expression to retrieve the connection string
 value   -->
        <!-- from the web.config file.                            -->
        <asp:SqlDataSource ID="DetailsViewSource"
 runat="server" 
          ConnectionString=
            "<%$ ConnectionStrings:NorthWindConnectionString%>"
            InsertCommand="INSERT INTO [Customers]([CustomerID],
 [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID,
 @CompanyName, @Address, @City, @PostalCode, @Country)"
          SelectCommand="Select [CustomerID], [CompanyName], 
            [Address], [City], [PostalCode], [Country] From 
            [Customers]">
        </asp:SqlDataSource>
    </form>
</body>
</html>
<%@ Page Language="C#" %>

<script runat="server">

    void CustomerDetailView_ItemCommand(Object sender, DetailsViewCommandEventArgs
 e)
    {

        // Use the CommandName property to determine which button
        // was clicked. 
        if (e.CommandName == "Add")
        {

            // Add the current store to the contact list. 

            // Get the row that contains the store name. In this
            // example, the store name is in the second row (index 1)
  
            // of the DetailsView control.
            DetailsViewRow row = CustomerDetailView.Rows[1];

            // Get the store's name from the appropriate cell.
            // In this example, the store name is in the second cell
  
            // (index 1) of the row.
            String name = row.Cells[1].Text;

            // Create a ListItem object with the store's name.
            ListItem item = new ListItem(name);

            // Add the ListItem object to the ListBox, if the 
            // item doesn't already exist.
            if (!ContactListBox.Items.Contains(item))
            {
                ContactListBox.Items.Add(item);
            }

        }

    }

</script>

<html>
<body>
    <form id="Form1" runat="server">
        <h3>
            DetailsView ItemCommand Example</h3>
        <asp:DetailsView ID="CustomerDetailView" 
            DataSourceID="DetailsViewSource"
            AutoGenerateRows="false" 
            DataKeyNames="CustomerID" 
            AllowPaging="true" 
            OnItemCommand="CustomerDetailView_ItemCommand"
            runat="server">
            
            <FieldHeaderStyle BackColor="Navy" ForeColor="White"
 />
            
            <Fields>
                <asp:BoundField DataField="CustomerID" HeaderText="Store
 ID" />
                <asp:BoundField DataField="CompanyName" HeaderText="Store
 Name" />
                <asp:BoundField DataField="City" HeaderText="City"
 />
                <asp:ButtonField CommandName="Add" Text="Add Contact"
 />
            </Fields>
        </asp:DetailsView>
        
        <hr />
        
        Contacts:<br />
        <asp:ListBox ID="ContactListBox" runat="server" />
        <!-- This example uses Microsoft SQL Server and connects  -->
        <!-- to the Northwind sample database. Use an ASP.NET     -->
        <!-- expression to retrieve the connection string value
   -->
        <!-- from the web.config file.                            -->
        <asp:SqlDataSource ID="DetailsViewSource" runat="server"
 
          ConnectionString=
            "<%$ ConnectionStrings:NorthWindConnectionString%>"
            InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName],
 [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName,
 @Address, @City, @PostalCode, @Country)"
          SelectCommand="Select [CustomerID], [CompanyName], 
            [Address], [City], [PostalCode], [Country] From 
            [Customers]">
        </asp:SqlDataSource>
    </form>
</body>
</html>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
System.Web.UI.WebControls 名前空間
DetailsView クラス
DetailsView.ItemCommand イベント
OnItemCommand
DetailsViewCommandEventArgs クラス
ButtonField クラス
TemplateField
CommandEventArgs クラス
その他の技術情報
イベントデリゲート


このページでは「.NET Framework クラス ライブラリ リファレンス」からDetailsViewCommandEventHandler デリゲートを検索した結果を表示しています。
Weblioに収録されているすべての辞書からDetailsViewCommandEventHandler デリゲートを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からDetailsViewCommandEventHandler デリゲート を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

DetailsViewCommandEventHandler デリゲートのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DetailsViewCommandEventHandler デリゲートのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS