DetailsViewInsertedEventArgs 類別

定義

提供 ItemInserted 事件的資料。Provides data for the ItemInserted event.

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

範例

下列程式碼範例示範如何使用 DetailsViewInsertedEventArgs 傳遞給事件之事件處理常式的物件 ItemInserted ,以判斷插入作業期間是否發生例外狀況。The following code example demonstrates how to use the DetailsViewInsertedEventArgs object passed to the event handler for the ItemInserted event to determine whether an exception occurred during 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_ItemInserted(Object sender, 
    DetailsViewInsertedEventArgs e)
  {
    // Use the Exception property to determine whether an exception
    // occurred during the insert operation.
    if (e.Exception == null && e.AffectedRows == 1)
    {
      // Use the Values property to get the value entered by 
      // the user for the CompanyName field.
      String name = e.Values["CompanyName"].ToString();

      // Display a confirmation message.
      MessageLabel.Text = name + " added 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;
      
      // When an exception occurs, keep the DetailsView
      // control in insert mode.
      e.KeepInInsertMode = true;
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewInsertedEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateinsertbutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          oniteminserted="CustomerDetailsView_ItemInserted" 
          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_ItemInserted(ByVal sender As Object, _
    ByVal e As DetailsViewInsertedEventArgs) _
    Handles CustomerDetailsView.ItemInserted

    ' Use the Exception property to determine whether an exception
    ' occurred during the insert operation.
    If e.Exception Is Nothing And e.AffectedRows = 1 Then
    
      ' Use the Values property to get the value entered by 
      ' the user for the CompanyName field.
      Dim name As String = e.Values("CompanyName").ToString()

      ' Display a confirmation message.
      MessageLabel.Text = name & " added 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
      
      ' When an exception occurs, keep the DetailsView
      ' control in insert mode.
      e.KeepInInsertMode = True
    
    End If
        
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewInsertedEventArgs Example</h3>
                
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateinsertbutton="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]"
          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>

備註

控制項會在 DetailsView ItemInserted 按一下控制項中的 [插入 ) ] 按鈕 (按鈕時引發事件 CommandName ,但在 DetailsView 控制項插入記錄後,則為。The DetailsView control raises the ItemInserted event when an Insert button (a button with its CommandName property set to "Insert") within the control is clicked, but after the DetailsView control inserts the record. 這可讓您提供執行自訂常式的事件處理常式,例如,在每次發生此事件時,檢查插入作業的結果。This allows you to provide an event handler that performs a custom routine, such as checking the results of an insert operation, whenever this event occurs.

DetailsViewInsertedEventArgs物件會傳遞至事件處理常式,可讓您判斷受影響的記錄數目,以及可能發生的任何例外狀況。A DetailsViewInsertedEventArgs object is passed to the event handler, which allows you to determine the number of records affected and any exceptions that might have occurred. 若要判斷受插入作業影響的記錄數目,請使用 AffectedRows 屬性。To determine the number of records affected by the insert operation, use the AffectedRows property. 使用 Exception 屬性來判斷是否發生任何例外狀況。Use the Exception property to determine whether any exceptions occurred. 您也可以藉由設定屬性,來指出是否已在事件處理常式中處理例外狀況 ExceptionHandledYou can also indicate whether the exception was handled in the event handler by setting the ExceptionHandled property. 如果您需要存取所插入記錄的值,請使用 Values 屬性。If you need to access the values of the inserted record, use the Values property.

根據預設, DetailsView 控制項會回到 insert 作業之後的屬性所指定的模式 DefaultModeBy default, the DetailsView control returns to the mode specified by the DefaultMode property after an insert operation. 若要讓 DetailsView 控制項保持在插入模式,請將 KeepInInsertMode 屬性設定為 trueTo keep the DetailsView control in insert mode, set the KeepInInsertMode property to true.

如需如何處理事件的詳細資訊,請參閱 處理和引發事件For more information about how to handle events, see Handling and Raising Events.

如需 DetailsViewDeletedEventArgs 類別之執行個體的初始屬性值清單,請參閱 DetailsViewDeletedEventArgs 建構函式。For a list of initial property values for an instance of the DetailsViewDeletedEventArgs class, see the DetailsViewDeletedEventArgs constructor.

建構函式

DetailsViewInsertedEventArgs(Int32, Exception)

初始化 DetailsViewInsertedEventArgs 類別的新執行個體。Initializes a new instance of the DetailsViewInsertedEventArgs class.

屬性

AffectedRows

取得插入作業所影響的資料列數目。Gets the number of rows affected by the insert operation.

Exception

取得插入作業中引發的例外狀況 (如果有的話)。Gets the exception (if any) that was raised during the insert operation.

ExceptionHandled

取得或設定值,指出是否在事件處理常式中處理插入作業中引發的例外狀況。Gets or sets a value indicating whether an exception that was raised during the insert operation was handled in the event handler.

KeepInInsertMode

取得或設定值,指出 DetailsView 控制項是否在插入作業後停留在插入模式中。Gets or sets a value indicating whether the DetailsView control should remain in insert mode after an insert operation.

Values

取得字典,其包含已插入之資料錄的欄位名稱/值組。Gets a dictionary that contains the field name/value pairs for the inserted record.

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。Determines whether the specified object is equal to the current object.

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。Serves as the default hash function.

(繼承來源 Object)
GetType()

取得目前執行個體的 TypeGets 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)

適用於

另請參閱