DetailsViewInsertEventArgs クラス

定義

ItemInserting イベントのデータを提供します。Provides data for the ItemInserting event.

public ref class DetailsViewInsertEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewInsertEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewInsertEventArgs = class
    inherit CancelEventArgs
Public Class DetailsViewInsertEventArgs
Inherits CancelEventArgs
継承
DetailsViewInsertEventArgs

イベントのイベントハンドラーに渡されたDetailsViewInsertEventArgsオブジェクトを使用して挿入操作をキャンセルする方法を次のコード例に示します。 ItemInsertingThe following code example demonstrates how to use the DetailsViewInsertEventArgs object passed to the event handler for the ItemInserting event to cancel an insert operation.


<%@ Page language="C#" %>

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

  void CustomerDetailsView_ItemInserting(Object sender, 
    DetailsViewInsertEventArgs e)
  {
    // Use the Values property to retrieve the key field value.
    String keyValue = e.Values["CustomerID"].ToString();

    // Insert the record only if the key field is four characters
    // long; otherwise, cancel the insert operation.
    if (keyValue.Length == 4)
    {
      // Change the key field value to upper case before inserting 
      // the record in the data source.
      e.Values["CustomerID"] = keyValue.ToUpper();

      MessageLabel.Text = "";
    }
    else
    {
      MessageLabel.Text = "The key field must have four digits.";
      e.Cancel = true;
    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewInsertEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewInsertEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateinsertbutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          oniteminserting="CustomerDetailsView_ItemInserting" 
          runat="server">
               
          <fieldheaderstyle backcolor="Navy"
            forecolor="White"/>
                    
        </asp:detailsview>
        
        <asp:label id="MessageLabel"
          forecolor="Red"
          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]"
          insertcommand="INSERT INTO [Customers]([CustomerID], 
            [CompanyName], [Address], [City], [PostalCode], 
            [Country]) VALUES (@CustomerID, @CompanyName, @Address, 
            @City, @PostalCode, @Country)"
          connectionstring=
          "<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>
            
      </form>
  </body>
</html>


<%@ Page language="VB" autoeventwireup="false" %>

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

  Sub CustomerDetailsView_ItemInserting(ByVal sender As Object, _
    ByVal e As DetailsViewInsertEventArgs) _
    Handles CustomerDetailsView.ItemInserting
  
    ' Use the Values property to retrieve the key field value.
    Dim keyValue As String = e.Values("CustomerID").ToString()

    ' Insert the record only if the key field is four characters
    ' long; otherwise, cancel the insert operation.
    If keyValue.Length = 4 Then
    
      ' Change the key field value to upper case before inserting 
      ' the record in the data source.
      e.Values("CustomerID") = keyValue.ToUpper()
      
      MessageLabel.Text = ""
    
    Else
    
      MessageLabel.Text = "The key field must have four digits."
      e.Cancel = True
    
    End If

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewInsertEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewInsertEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateinsertbutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          oniteminserting="CustomerDetailsView_ItemInserting" 
          runat="server">
               
          <fieldheaderstyle backcolor="Navy"
            forecolor="White"/>
                    
        </asp:detailsview>
        
        <asp:label id="MessageLabel"
          forecolor="Red"
          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]"
          insertcommand="INSERT INTO [Customers]([CustomerID], 
            [CompanyName], [Address], [City], [PostalCode], 
            [Country]) VALUES (@CustomerID, @CompanyName, @Address, 
            @City, @PostalCode, @Country)"
          connectionstring=
          "<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>
            
      </form>
  </body>
</html>

注釈

コントロールは、コントロールItemInserting内で挿入ボタンCommandName (プロパティが "Insert" に設定されているボタン) をクリックしたときに、 DetailsViewコントロールがレコードを挿入する前に、イベントを発生させます。 DetailsViewThe DetailsView control raises the ItemInserting event when an Insert button (a button with its CommandName property set to "Insert") within the control is clicked, but before the DetailsView control inserts the record. これにより、このイベントが発生するたびに、データソースに挿入する前にレコードの値を HTML エンコードするなど、カスタムルーチンを実行するイベントハンドラーを提供できます。This allows you to provide an event handler that performs a custom routine, such as HTML-encoding the values of a record before inserting it in the data source, whenever this event occurs.

オブジェクトがイベントハンドラーに渡されます。これにより、 DetailsViewコントロールに送信されるオプションのコマンド引数の値を決定し、挿入操作をキャンセルする必要があることを示すことができます。 DetailsViewInsertEventArgsA DetailsViewInsertEventArgs object is passed to the event handler, which allows you to determine the value of an optional command argument sent to the DetailsView control and to indicate that the insert operation should be canceled. Command 引数の値を確認するには、 CommandArgumentプロパティを使用します。To determine the value of the command argument, use the CommandArgument property. 挿入操作を取り消すには、 Cancelプロパティをにtrue設定します。To cancel the insert operation, set the Cancel property to true. また、 Valuesプロパティを使用して、新しいレコードのフィールド値を読み取りまたは変更することもできます。You can also read or modify the field values for the new record by using the Values property.

イベントを処理する方法の詳細については、次を参照してください。処理とイベントの発生します。For more information about how to handle events, see Handling and Raising Events.

DetailsViewInsertEventArgs クラスのインスタンスの初期プロパティ値一覧については、DetailsViewInsertEventArgs コンストラクターに関するトピックを参照してください。For a list of initial property values for an instance of the DetailsViewInsertEventArgs class, see the DetailsViewInsertEventArgs constructor.

コンストラクター

DetailsViewInsertEventArgs(Object)

DetailsViewInsertEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the DetailsViewInsertEventArgs class.

プロパティ

Cancel

イベントをキャンセルするかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the event should be canceled.

(継承元 CancelEventArgs)
CommandArgument

DetailsView コントロールに渡される、挿入操作用のコマンド引数を取得します。Gets the command argument for the insert operation passed to the DetailsView control.

Values

挿入するレコードのフィールドの名前/値ペアを格納しているディクショナリを取得します。Gets a dictionary that contains the field name/value pairs for the record to insert.

メソッド

Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(継承元 Object)

適用対象

こちらもご覧ください