GridViewUpdateEventArgs GridViewUpdateEventArgs GridViewUpdateEventArgs GridViewUpdateEventArgs Class

Definizione

Fornisce dati per l'evento RowUpdating.Provides data for the RowUpdating event.

public ref class GridViewUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class GridViewUpdateEventArgs : System.ComponentModel.CancelEventArgs
type GridViewUpdateEventArgs = class
    inherit CancelEventArgs
Public Class GridViewUpdateEventArgs
Inherits CancelEventArgs
Ereditarietà
GridViewUpdateEventArgsGridViewUpdateEventArgsGridViewUpdateEventArgsGridViewUpdateEventArgs

Esempi

Nell'esempio seguente viene illustrato come utilizzare l' GridViewUpdateEventArgs oggetto passato al metodo di gestione degli eventi per codificare in HTML tutti i valori forniti dall'utente prima di aggiornare l'origine dati.The following example demonstrates how to use the GridViewUpdateEventArgs object passed to the event-handling method to HTML-encode all values supplied by the user before updating the data source.


<%@ 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_RowUpdating(Object sender, GridViewUpdateEventArgs e)
  {
     
    // Iterate through the NewValues collection and HTML encode all 
    // user-provided values before updating the data source.
    foreach (DictionaryEntry entry in e.NewValues)
    {
    
      e.NewValues[entry.Key] = Server.HtmlEncode(entry.Value.ToString());
    
    }
        
  }
       
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView RowUpdating Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView RowUpdating 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"
        onrowupdating="CustomersGridView_RowUpdating"  
        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]"
        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_RowUpdating(ByVal sender As Object, ByVal e As GridViewUpdateEventArgs)
    
    ' Use the CopyTo method to copy the DictionaryEntry objects in the 
    ' NewValues collection to an array.
    Dim records(e.NewValues.Count - 1) As DictionaryEntry
    e.NewValues.CopyTo(records, 0)
    
    ' Iterate through the array and HTML encode all user-provided values 
    ' before updating the data source.
    Dim entry As DictionaryEntry
    For Each entry In records
            
      e.NewValues(entry.Key) = Server.HtmlEncode(entry.Value.ToString())
      
    Next
        
  End Sub
       
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView RowUpdating Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView RowUpdating 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"
        onrowupdating="CustomersGridView_RowUpdating"  
        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]"
        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>

Commenti

Il GridView controllo genera l' RowUpdating evento quando viene fatto clic sul pulsante Aggiorna di una riga, ma prima GridView che il controllo aggiorni la riga.The GridView control raises the RowUpdating event when a row's Update button is clicked, but before the GridView control updates the row. Questo consente di fornire un metodo di gestione degli eventi che esegue una routine personalizzata, ad esempio l'annullamento dell'operazione di aggiornamento, ogni volta che si verifica questo evento.This allows you to provide an event-handling method that performs a custom routine, such as canceling the update operation, whenever this event occurs.

Un GridViewUpdateEventArgs oggetto viene passato al metodo di gestione degli eventi, che consente di determinare l'indice della riga corrente e di indicare che l'operazione di aggiornamento deve essere annullata.A GridViewUpdateEventArgs object is passed to the event-handling method, which allows you to determine the index of the current row and to indicate that the update operation should be canceled. Per annullare l'operazione di aggiornamento, impostare Cancel la proprietà GridViewUpdateEventArgs dell'oggetto su true.To cancel the update operation, set the Cancel property of the GridViewUpdateEventArgs object to true. È inoltre possibile modificare le Keysraccolte OldValues, e NewValues , se necessario, prima che i valori vengano passati all'origine dati.You can also manipulate the Keys, OldValues, and NewValues collections, if necessary, before the values are passed to the data source. Un modo comune per usare queste raccolte è codificare in HTML i valori forniti dall'utente prima che vengano archiviati nell'origine dati.A common way to use these collections is to HTML-encode the values supplied by the user before they are stored in the data source. Questo consente di evitare attacchi intrusivi nello script.This helps to prevent script injection attacks.

Per altre informazioni su come gestire gli eventi, vedere la gestione e generazione di eventi.For more information about how to handle events, see Handling and Raising Events.

Per un elenco dei valori iniziali delle proprietà di un'istanza GridViewUpdateEventArgsdi, vedere GridViewSelectEventArgs il costruttore.For a list of initial property values for an instance of GridViewUpdateEventArgs, see the GridViewSelectEventArgs constructor.

Costruttori

GridViewUpdateEventArgs(Int32) GridViewUpdateEventArgs(Int32) GridViewUpdateEventArgs(Int32) GridViewUpdateEventArgs(Int32)

Inizializza una nuova istanza della classe GridViewUpdateEventArgs.Initializes a new instance of the GridViewUpdateEventArgs class.

Proprietà

Cancel Cancel Cancel Cancel

Ottiene o imposta un valore che indica se l'evento debba essere annullato.Gets or sets a value indicating whether the event should be canceled.

(Inherited from CancelEventArgs)
Keys Keys Keys Keys

Ottiene un dizionario delle coppie nome/valore dei campi che rappresentano la chiave primaria della riga da aggiornare.Gets a dictionary of field name/value pairs that represent the primary key of the row to update.

NewValues NewValues NewValues NewValues

Ottiene un dizionario contenente i valori modificati delle coppie nome/valore dei campi non chiave della riga da aggiornare.Gets a dictionary containing the revised values of the non-key field name/value pairs in the row to update.

OldValues OldValues OldValues OldValues

Ottiene un dizionario contenente le coppie nome/valore originarie dei campi della riga da aggiornare.Gets a dictionary containing the original field name/value pairs in the row to update.

RowIndex RowIndex RowIndex RowIndex

Ottiene l'indice della riga da aggiornare.Gets the index of the row being updated.

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Si applica a

Vedi anche