Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout

DetailsViewUpdatedEventArgs, classe

Remarque : cette classe est nouvelle dans le .NET Framework version 2.0.

Fournit des données pour l'événement ItemUpdated.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public class DetailsViewUpdatedEventArgs : EventArgs
public class DetailsViewUpdatedEventArgs extends EventArgs
public class DetailsViewUpdatedEventArgs extends EventArgs

Le contrôle DetailsView déclenche l'événement ItemUpdated lors d'un clic sur un bouton Mettre à jour (bouton dont la propriété CommandName a la valeur "Update") situé dans le contrôle, mais après mise à jour de l'enregistrement par le contrôle DetailsView. Cela vous permet de fournir un gestionnaire d'événements qui exécute une routine personnalisée, par exemple la vérification des résultats d'une opération de mise à jour, chaque fois que cet événement se produit.

Un objet DetailsViewUpdatedEventArgs est passé au gestionnaire d'événements qui vous permet de déterminer le nombre d'enregistrements affectés et toutes les exceptions éventuellement levées. Pour déterminer le nombre d'enregistrements affectés par l'opération de mise à jour, utilisez la propriété AffectedRows. Pour déterminer si des exceptions se sont produites, utilisez la propriété Exception. Vous pouvez également indiquer si l'exception a été gérée dans le gestionnaire d'événements en définissant la propriété ExceptionHandled. Si vous devez accéder aux valeurs de champs clés de l'enregistrement mis à jour, utilisez la propriété Keys. Il est possible d'accéder aux valeurs de champs ne correspondant pas à une clé d'origine ou mise à jour à l'aide des propriétés OldValues et NewValues, respectivement.

Par défaut, le contrôle DetailsView retourne au mode spécifié par la propriété DefaultMode après une opération de mise à jour. Pour que le contrôle DetailsView reste en mode édition, affectez true à la propriété KeepInEditMode.

Pour plus d'informations sur la gestion des événements, consultez Consommation d'événements.

Pour obtenir la liste des valeurs de propriété initiales d'une instance de la classe DetailsViewUpdatedEventArgs, consultez le constructeur DetailsViewUpdatedEventArgs.

L'exemple suivant montre comment utiliser l'objet DetailsViewUpdatedEventArgs passé au gestionnaire d'événements pour l'événement ItemUpdated afin de déterminer si une exception s'est produite pendant une opération de mise à jour.


<%@ Page language="C#" %>

<script runat="server">
  
  void CustomerDetailsView_ItemUpdated(Object sender, 
    DetailsViewUpdatedEventArgs e)
  {
    // Use the Exception property to determine whether an exception
    // occurred during the insert operation.
    if (e.Exception == null)
    {
      // Use the Values property to get the value entered by 
      // the user for the CompanyName field.
      String keyFieldValue = e.Keys["CustomerID"].ToString();

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

      // Display the old and new values.
      DisplayValues(e);

      if (e.AffectedRows == 1)
      {
        MessageLabel.Text += e.AffectedRows.ToString() + 
          " record updated.";
      }
      else
      {
        MessageLabel.Text += e.AffectedRows.ToString() + 
          " records updated.";
      }
    }
    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 edit mode.
      e.KeepInEditMode = true;
    }
  }

  void DisplayValues(DetailsViewUpdatedEventArgs e)
  {
    
    MessageLabel.Text += "<br/></br>";
    
    // Iterate through the OldValue and NewValues
    // properties and display the values.
    for (int i = 0; i < e.OldValues.Count; i++)
    {
      MessageLabel.Text += "Old Value=" + e.OldValues[i].ToString() +
        ", New Value=" + e.NewValues[i].ToString() + "<br/>";
    }

    MessageLabel.Text += "</br>";
    
  }
  
</script>

<html>

  <body>
    <form runat="server">
        
      <h3>DetailsViewUpdatedEventArgs Example</h3>
                       
        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          autogeneraterows="true"
          autogenerateeditbutton="true"  
          allowpaging="true"
          datakeynames="CustomerID" 
          onitemupdated="CustomerDetailsView_ItemUpdated"
          runat="server">
            
          <pagersettings position="Bottom"/> 
                    
        </asp:detailsview>
        
        <br/>
        
        <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]"
          updatecommand="Update [Customers] Set 
          [CompanyName]=@CompanyName, [Address]=@Address, 
          [City]=@City, [PostalCode]=@PostalCode, 
          [Country]=@Country 
          Where [CustomerID]=@CustomerID"
          connectionstring=
          "<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>
            
      </form>
  </body>
</html>


  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : LinkDemand ; valeur d'autorisation : Minimal
  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : InheritanceDemand ; valeur d'autorisation : Minimal

System.Object
   System.EventArgs
    System.Web.UI.WebControls.DetailsViewUpdatedEventArgs

Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2015 Microsoft