GridViewUpdatedEventArgs Klasse

Definition

Stellt Daten für das RowUpdated-Ereignis bereit.Provides data for the RowUpdated event.

public ref class GridViewUpdatedEventArgs : EventArgs
public class GridViewUpdatedEventArgs : EventArgs
type GridViewUpdatedEventArgs = class
    inherit EventArgs
Public Class GridViewUpdatedEventArgs
Inherits EventArgs
Vererbung
GridViewUpdatedEventArgs

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie bestimmen können, ob während eines Aktualisierungs Vorgangs eine Ausnahme aufgetreten ist.The following example shows how to determine whether an exception occurred during an update 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 CustomersGridView_RowUpdated(Object sender, GridViewUpdatedEventArgs e)
  {
    // Use the Exception property to determine whether an exception
    // occurred during the update operation.
    if (e.Exception == null)
    {
      // Sometimes an error might occur that does not raise an 
      // exception, but prevents the update operation from 
      // completing. Use the AffectedRows property to determine 
      // whether the record was actually updated. 
      if (e.AffectedRows == 1)
      {
        // Use the Keys property to get the value of the key field.
        String keyFieldValue = e.Keys["CustomerID"].ToString();

        // Display a confirmation message.
        Message.Text = "Record " + keyFieldValue +
          " updated successfully. ";

        // Display the new and original values.
        DisplayValues((OrderedDictionary)e.NewValues, (OrderedDictionary)e.OldValues);
      }
      else
      {
        // Display an error message.
        Message.Text = "An error occurred during the update operation.";

        // When an error occurs, keep the GridView
        // control in edit mode.
        e.KeepInEditMode = true;
      }
    }
    else
    {
      // Insert the code to handle the exception.
      Message.Text = e.Exception.Message;

      // Use the ExceptionHandled property to indicate that the 
      // exception is already handled.
      e.ExceptionHandled = true;

      e.KeepInEditMode = true;
    }
  }

  void DisplayValues(OrderedDictionary newValues, OrderedDictionary oldValues)
  {

    Message.Text += "<br/></br>";

    // Iterate through the new and old values. Display the
    // values on the page.
    for (int i = 0; i < oldValues.Count; i++)
    {
      Message.Text += "Old Value=" + oldValues[i].ToString() +
        ", New Value=" + newValues[i].ToString() + "<br/>";
    }

    Message.Text += "</br>";

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewUpdatedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewUpdatedEventArgs Example</h3>
            
      <!-- 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"
        autogenerateeditbutton="true"
        allowpaging="true" 
        datakeynames="CustomerID"
        onrowupdated="CustomersGridView_RowUpdated" 
        runat="server">
      </asp:gridview>
      
      <br/>
      
      <asp:label id="Message"
        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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country 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_RowUpdated(sender As Object, e As GridViewUpdatedEventArgs)
  
    ' Use the Exception property to determine whether an exception
    ' occurred during the update operation.
    If e.Exception Is Nothing Then
    
      ' Sometimes an error might occur that does not raise an 
      ' exception, but prevents the update operation from 
      ' completing. Use the AffectedRows property to determine 
      ' whether the record was actually updated. 
      If e.AffectedRows = 1 Then
      
        ' Use the Keys property to get the value of the key field.
        Dim keyFieldValue As String = e.Keys("CustomerID").ToString()

        ' Display a confirmation message.
        Message.Text = "Record " & keyFieldValue & _
          " updated successfully. "

        ' Display the new and original values.
        DisplayValues(CType(e.NewValues, OrderedDictionary), CType(e.OldValues, OrderedDictionary))

      Else
      
        ' Display an error message.
        Message.Text = "An error occurred during the update operation."

        ' When an error occurs, keep the GridView
        ' control in edit mode.
        e.KeepInEditMode = True
        
      End If
    
    Else
    
      ' Insert the code to handle the exception.
      Message.Text = e.Exception.Message

      ' Use the ExceptionHandled property to indicate that the 
      ' exception is already handled.
      e.ExceptionHandled = True

      e.KeepInEditMode = True
    
    End If
  
  End Sub

  Sub DisplayValues(ByVal newValues As OrderedDictionary, ByVal oldValues As OrderedDictionary)

    Message.Text &= "<br/></br>"

    ' Iterate through the new and old values. Display the
    ' values on the page.
    Dim i As Integer
    For i = 0 To oldValues.Count - 1
    
      Message.Text &= "Old Value=" & oldValues(i).ToString() & _
        ", New Value=" & newValues(i).ToString() & "<br/>"
    Next

    Message.Text &= "</br>"

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewUpdatedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewUpdatedEventArgs Example</h3>
            
      <!-- 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"
        autogenerateeditbutton="true"
        allowpaging="true" 
        datakeynames="CustomerID"
        onrowupdated="CustomersGridView_RowUpdated" 
        runat="server">
      </asp:gridview>
      
      <br/>
      
      <asp:label id="Message"
        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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

Hinweise

Das-Steuerelement löst GridView das- RowUpdated Ereignis aus, wenn auf die Schaltfläche Aktualisieren im-Steuerelement geklickt wird, aber nachdem das- GridView Steuerelement den Datensatz aktualisiertThe GridView control raises the RowUpdated event when an Update button in the control is clicked, but after the GridView control updates the record. (Eine Schaltfläche Aktualisieren ist ein Schaltflächen-Steuerelement, dessen- CommandName Eigenschaft auf "Update" festgelegt ist.) Sie können eine benutzerdefinierte Routine ausführen, wenn dieses Ereignis auftritt, z. b. das Überprüfen der Ergebnisse eines Aktualisierungs Vorgangs.(An Update button is a button control whose CommandName property is set to "Update".) You can perform a custom routine whenever this event occurs, such as checking the results of an update operation.

Ein GridViewUpdatedEventArgs -Objekt wird an den-Ereignishandler übermittelt, mit dem Sie die Anzahl der betroffenen Datensätze und ggf. aufgetretenen Ausnahmen ermitteln können.A GridViewUpdatedEventArgs object is passed to the event handler, which enables you to determine the number of records that were affected and any exceptions that might have occurred. Verwenden Sie die-Eigenschaft, um die Anzahl der Datensätze zu ermitteln, die vom Aktualisierungs Vorgang betroffen sind AffectedRows .To determine the number of records that were affected by the update operation, use the AffectedRows property. Verwenden Sie die-Eigenschaft, um zu bestimmen, ob Ausnahmen aufgetreten sind Exception .To determine whether any exceptions occurred, use the Exception property. Sie können auch angeben, ob die Ausnahme im Ereignishandler behandelt wurde, indem Sie die- ExceptionHandled Eigenschaft festlegen.You can also indicate whether the exception was handled in the event handler by setting the ExceptionHandled property.

Um auf die Schlüssel Feldwerte für den aktualisierten Datensatz zuzugreifen, verwenden Sie die- Keys Eigenschaft.To access the key field values for the updated record, use the Keys property. Mithilfe der-Eigenschaft können Sie auf die ursprünglichen nicht-Schlüssel Feldwerte zugreifen OldValues .You can access the original non-key field values by using the OldValues property. Mithilfe der-Eigenschaften können Sie auf die aktualisierten Werte für nicht Schlüsselfelder zugreifen NewValues .You can access the updated non-key field values by using the NewValues properties.

Standardmäßig wird das GridView Steuerelement nach einem Aktualisierungs Vorgang in den schreibgeschützten Modus zurückgegeben.By default, the GridView control returns to read-only mode after an update operation. Wenn Sie eine Ausnahme behandeln, die während des Aktualisierungs Vorgangs aufgetreten ist, können Sie das GridView Steuerelement im Bearbeitungsmodus belassen, indem Sie die- KeepInEditMode Eigenschaft auf festlegen true .When you handle an exception that occurred during the update operation, you can keep the GridView control in edit mode by setting the KeepInEditMode property to true.

Weitere Informationen zum Behandeln von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.For more information about how to handle events, see Handling and Raising Events.

Eine Liste der anfänglichen Eigenschaftenwerte für eine Instanz der GridViewUpdatedEventArgs-Klasse finden Sie im GridViewUpdatedEventArgs-Konstruktor.For a list of initial property values for an instance of the GridViewUpdatedEventArgs class, see the GridViewUpdatedEventArgs constructor.

Konstruktoren

GridViewUpdatedEventArgs(Int32, Exception)

Initialisiert eine neue Instanz der GridViewUpdatedEventArgs-Klasse.Initializes a new instance of the GridViewUpdatedEventArgs class.

Eigenschaften

AffectedRows

Ruft die Anzahl der vom Aktualisierungsvorgang betroffenen Zeilen ab.Gets the number of rows that were affected by the update operation.

Exception

Ruft die Ausnahme (sofern vorhanden) ab, die während des Aktualisierungsvorgangs ausgelöst wurde.Gets the exception (if any) that was raised during the update operation.

ExceptionHandled

Ruft einen Wert ab, der angibt, ob während der Behandlung des Aktualisierungsvorgangs im Ereignishandler eine Ausnahme ausgelöst wurde, oder legt diesen Wert fest.Gets or sets a value that indicates whether an exception that was raised during the update operation was handled in the event handler.

KeepInEditMode

Ruft einen Wert ab, der angibt, ob das GridView-Steuerelement nach einem Aktualisierungsvorgang im Bearbeitungsmodus belassen werden soll, oder legt diesen fest.Gets or sets a value that indicates whether the GridView control should remain in edit mode after an update operation.

Keys

Ruft ein Wörterbuch ab, das die neuen Name-Wert-Paare der Schlüsselfelder für den aktualisierten Datensatz enthält.Gets a dictionary that contains the key field name/value pairs for the updated record.

NewValues

Ruft ein Wörterbuch ab, das die neuen Name-Wert-Paare der Felder für den aktualisierten Datensatz enthält.Gets a dictionary that contains the new field name/value pairs for the updated record.

OldValues

Ruft ein Wörterbuch ab, das die ursprünglichen Name-Wert-Paare der Felder für den aktualisierten Datensatz enthält.Gets a dictionary that contains the original field name/value pairs for the updated record.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch