Cette documentation est archivée et n’est pas conservée.

FormView.ItemDeleting, événement

Se produit lorsqu'un clic est effectué sur un bouton Supprimer d'un contrôle FormView, mais avant l'opération de suppression.

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

public event FormViewDeleteEventHandler ItemDeleting
/** @event */
public void add_ItemDeleting (FormViewDeleteEventHandler value)

/** @event */
public void remove_ItemDeleting (FormViewDeleteEventHandler value)

En JScript, vous pouvez gérer les événements définis par une classe, mais vous ne pouvez pas définir les vôtres.
Non applicable.

Le contrôle FormView déclenche l'événement ItemDeleting suite à un clic sur le bouton Supprimer du contrôle (bouton dont la propriété CommandName a la valeur "Delete"), mais avant que le contrôle FormView ne supprime l'enregistrement. Cela vous permet de fournir une méthode de gestion d'événements qui exécute une routine personnalisée, par exemple la vérification d'un enregistrement avant sa suppression, chaque fois que cet événement se produit.

Un objet FormViewDeleteEventArgs est passé à la méthode de gestion d'événements, ce qui vous permet de déterminer l'index de l'enregistrement en cours de suppression et d'indiquer que l'opération de suppression doit être annulée. Pour déterminer l'index d'un enregistrement, utilisez la propriété RowIndex. Pour annuler l'opération de suppression, affectez true à la propriété Cancel. Vous pouvez également accéder aux champs clés et aux champs ne correspondant pas à une clé en utilisant respectivement les propriétés Keys et Values.

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

L'exemple suivant montre comment utiliser l'événement ItemDeleting pour annuler une opération de suppression.


<%@ 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 EmployeeFormView_ItemDeleting(Object sender, FormViewDeleteEventArgs e)
  {
    // Get the employee ID, name, and job title from the Keys and Values
    // properties.
    String keyValue = e.Keys["EmployeeID"].ToString();
    String employeeName = e.Values["FirstName"].ToString() +
      " " + e.Values["LastName"].ToString();
    String title = e.Values["Title"].ToString();

    // Cancel the delete operation if the user attempts to 
    // delete a protected record. In this example, records for
    // employees with a "Sales Manager" job title are protected.
    if (title.Equals("Sales Manager"))
    {
      e.Cancel = true;
      MessageLabel.Text = "You cannot delete record " +
        e.RowIndex.ToString() + ". " + employeeName +
        " (Employee Number " + keyValue.ToString() +
        ") is protected.";
    }

  }
   
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>FormViewDeleteEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>FormViewDeleteEventArgs Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        onitemdeleting="EmployeeFormView_ItemDeleting"  
        runat="server">
        
        <itemtemplate>
        
          <table>
            <tr>
              <td>
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td>
                <asp:label id="FirstNameLabel"
                  text='<%#Bind("FirstName")%>'
                  font-bold="true"
                  runat="server"/>
                <asp:label id="LastNameLabel"
                  text='<%#Bind("LastName")%>'
                  font-bold="true"
                  runat="server"/>
                <br/>     
                <asp:label id="TitleLabel"
                  text='<%#Bind("Title")%>'
                  runat="server"/>        
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <asp:button id="DeleteButton"
                  text="Delete Record"
                  commandname="Delete"
                  runat="server" />
              </td>
            </tr>
          </table>
        
        </itemtemplate>         
                  
      </asp:formview>
      
      <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="EmployeeSource"
        selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
        deletecommand="Delete [Employees] Where [EmployeeID]=@EmployeeID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
            
    </form>
  </body>
</html>


Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 est pris en charge sur Windows Vista, Microsoft Windows XP SP2 et Windows Server 2003 SP1.

.NET Framework

Prise en charge dans : 3.0, 2.0
Afficher: