次の方法で共有


DetailsViewDeletedEventArgs クラス

定義

ItemDeleted イベントのデータを提供します。

public ref class DetailsViewDeletedEventArgs : EventArgs
public class DetailsViewDeletedEventArgs : EventArgs
type DetailsViewDeletedEventArgs = class
    inherit EventArgs
Public Class DetailsViewDeletedEventArgs
Inherits EventArgs
継承
DetailsViewDeletedEventArgs

次のコード例では、イベントハンドラーItemDeletedに渡されたオブジェクトをDetailsViewDeletedEventArgs使用して、削除操作中に例外が発生したかどうかを判断する方法を示します。


<%@ 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 StoresDetailView_ItemDeleted(Object sender, 
    DetailsViewDeletedEventArgs e)
  {
    // Use the Exception property to determine whether an exception
    // occurred during the delete operation.
    if (e.Exception == null)
    {
      // Use the AffectedRows property to determine the numbers of
      // rows affected by the delete operation.
      if (e.AffectedRows == 1)
      {
        MessageLabel.Text = e.AffectedRows.ToString() 
          + " record deleted successfully.";
      }
      else
      {
        MessageLabel.Text = e.AffectedRows.ToString() 
          + " records deleted successfully.";
      }
    }
    else
    {
      // Insert the code to handle the exception.
      MessageLabel.Text = e.Exception.Message;
      
      // Use the ExceptionHandled property to indicate that the 
      // exception is already handled.
      e.ExceptionHandled = true;
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewDeletedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewDeletedEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogeneratedeletebutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          onitemdeleted="StoresDetailView_ItemDeleted" 
          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]"
          deletecommand="Delete [Customers] 
            Where [CustomerID]=@CustomerID"
          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 StoresDetailView_ItemDeleted(ByVal sender As Object, _
    ByVal e As DetailsViewDeletedEventArgs) _
    Handles CustomerDetailsView.ItemDeleted
  
    ' Use the Exception property to determine whether an exception
    ' occurred during the delete operation.
    If e.Exception Is Nothing Then
    
      ' Use the AffectedRows property to determine the numbers of
      ' rows affected by the delete operation.
      If e.AffectedRows = 1 Then
      
        MessageLabel.Text = e.AffectedRows.ToString() _
          & " record deleted successfully."
      
      Else
              
        MessageLabel.Text = e.AffectedRows.ToString() _
          & " records deleted successfully."
      
      End If
    
    Else
    
      ' Insert the code to handle the exception.
      MessageLabel.Text = e.Exception.Message
      
      ' Use the ExceptionHandled property to indicate that the 
      ' exception is already handled.
      e.ExceptionHandled = True
    
    End If
    
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewDeletedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewDeletedEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogeneratedeletebutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          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]"
          deletecommand="Delete [Customers] 
            Where [CustomerID]=@CustomerID"
          connectionstring=
            "<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>
            
      </form>
  </body>
</html>

注釈

コントロールはDetailsView、コントロール内の Delete ボタン (プロパティが CommandName "Delete" に設定されたボタン) がクリックされたときにイベントをDetailsView発生ItemDeletedさせますが、コントロールがレコードを削除した後に発生します。 これにより、このイベントが発生するたびに、削除操作の結果を確認するなど、カスタム ルーチンを実行するイベント ハンドラーを提供できます。

DetailsViewDeletedEventArgsオブジェクトがイベント ハンドラーに渡されます。これにより、影響を受けるレコードの数と発生した可能性のある例外を特定できます。 削除操作の影響を受けるレコードの数を確認するには、 プロパティを AffectedRows 使用します。 例外が Exception 発生したかどうかを判断するには、 プロパティを使用します。 また、 プロパティを設定 ExceptionHandled することで、イベント ハンドラーで例外が処理されたかどうかを示すこともできます。 削除されたレコードのキー フィールドとキー以外のフィールドの名前と値のペアにアクセスする場合は、 プロパティと Values プロパティをそれぞれ使用Keysします。

イベントを処理する方法の詳細については、次を参照してください。処理とイベントの発生します。

DetailsViewDeletedEventArgs クラスのインスタンスの初期プロパティ値一覧については、DetailsViewDeletedEventArgs コンストラクターに関するトピックを参照してください。

コンストラクター

DetailsViewDeletedEventArgs(Int32, Exception)

DetailsViewDeletedEventArgs クラスの新しいインスタンスを初期化します。

プロパティ

AffectedRows

削除操作の影響を受けた行の数を取得します。

Exception

削除操作中に例外が発生した場合は、その例外を取得します。

ExceptionHandled

削除操作中に発生した例外がイベント ハンドラーで処理されたかどうかを示す値を取得または設定します。

Keys

削除される項目のキー フィールドの名前と値を格納している、キー フィールドの名前/値ペアの番号付きディクショナリを取得します。

Values

削除する項目のキー以外のフィールドの名前と値のペアのディクショナリを取得します。

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象

こちらもご覧ください