共用方式為


GridViewDeletedEventArgs 類別

定義

提供 RowDeleted 事件的資料。

public ref class GridViewDeletedEventArgs : EventArgs
public class GridViewDeletedEventArgs : EventArgs
type GridViewDeletedEventArgs = class
    inherit EventArgs
Public Class GridViewDeletedEventArgs
Inherits EventArgs
繼承
GridViewDeletedEventArgs

範例

下列範例示範如何使用 GridViewDeletedEventArgs 傳遞至事件之事件處理方法的物件 RowDeleted ,來判斷刪除作業期間是否發生例外狀況。


<%@ 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 CustomersGridView_RowDeleted(Object sender, GridViewDeletedEventArgs 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 whether the
      // record was deleted. Sometimes an error might occur that 
      // does not raise an exception, but prevents the delete
      // operation from completing.
      if (e.AffectedRows == 1)
      {
        Message.Text = "Record deleted successfully.";
      }
      else
      {
        Message.Text = "An error occurred during the delete operation.";
      }
    }
    else
    {
      // Insert the code to handle the exception.
      Message.Text = "An error occurred during the delete operation.";

      // 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>GridViewDeletedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewDeletedEventArgs Example</h3>
            
      <asp:label id="Message"
        forecolor="Red"          
        runat="server"/>
                
      <br/>
            
      <!-- The GridView control automatically sets the columns     -->
      <!-- specified in the datakeynames property as read-only.    -->
      <!-- No input controls are rendered for these columns in     -->
      <!-- edit mode.                                              -->
      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="true"
        autogeneratedeletebutton="true"
        datakeynames="CustomerID"
        onrowdeleted="CustomersGridView_RowDeleted"  
        runat="server">
      </asp:gridview>
            
      <!-- 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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        deletecommand="Delete from Customers where CustomerID = @CustomerID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
      
    </form>
  </body>
</html>

<%@ Page language="VB" %>

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

  Sub CustomersGridView_RowDeleted(ByVal sender As Object, ByVal e As GridViewDeletedEventArgs)

    ' 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 whether the
      ' record was deleted. Sometimes an error might occur that 
      ' does not raise an exception, but prevents the delete
      ' operation from completing.
      If e.AffectedRows = 1 Then
      
        Message.Text = "Record deleted successfully."
      
      Else
      
        Message.Text = "An error occurred during the delete operation."
      
      End If
    
    Else
          
      ' Insert the code to handle the exception.
      Message.Text = "An error occurred during the delete operation."

      ' 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>GridViewDeletedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewDeletedEventArgs Example</h3>
            
      <asp:label id="Message"
        forecolor="Red"          
        runat="server"/>
                
      <br/>
            
      <!-- The GridView control automatically sets the columns     -->
      <!-- specified in the datakeynames property as read-only.    -->
      <!-- No input controls are rendered for these columns in     -->
      <!-- edit mode.                                              -->
      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="true"
        autogeneratedeletebutton="true"
        datakeynames="CustomerID"
        onrowdeleted="CustomersGridView_RowDeleted"  
        runat="server">
      </asp:gridview>
            
      <!-- 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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        deletecommand="Delete from Customers where CustomerID = @CustomerID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
      
    </form>
  </body>
</html>

備註

GridView控制項 RowDeleted 會在按一下控制項內的 [刪除] 按鈕 (其屬性設定為 「Delete」) 的按鈕 CommandName 時引發事件,但在控制項刪除記錄之後 GridView 。 這可讓您提供執行自訂常式的事件處理方法,例如每當發生此事件時檢查刪除作業的結果。

GridViewDeletedEventArgs物件會傳遞至事件處理方法,可讓您判斷受影響的記錄數目,以及可能發生的任何例外狀況。 若要判斷受刪除作業影響的記錄數目,請使用 AffectedRows 屬性。 Exception使用 屬性來判斷是否發生任何例外狀況。 您也可以藉由設定 ExceptionHandled 屬性,指出例外狀況是否在事件處理方法中處理。

注意

如果在刪除作業期間發生例外狀況,且 ExceptionHandled 屬性設定 false 為 ,則 GridView 控制項會重新擲回例外狀況。

如果您想要存取已刪除記錄的索引鍵欄位和非索引鍵欄位的名稱/值組,請分別使用 KeysValues 屬性。

如需如何處理事件的詳細資訊,請參閱 處理和引發事件

建構函式

GridViewDeletedEventArgs(Int32, Exception)

初始化 GridViewDeletedEventArgs 類別的新執行個體。

屬性

AffectedRows

取得刪除作業所影響的資料列數目。

Exception

取得刪除作業中引發的例外狀況 (如果有的話)。

ExceptionHandled

取得或設定值,指出是否在事件處理常式中處理刪除作業中引發的例外狀況。

Keys

取得已刪除資料錄中索引鍵欄位名稱/值組的排序字典。

Values

取得已刪除資料錄中非索引鍵欄位名稱/值組的字典。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱