Questa documentazione è stata archiviata e non viene gestita.

Classe DetailsViewDeleteEventArgs

Aggiornamento: novembre 2007

Fornisce i dati per l'evento ItemDeleting.

Spazio dei nomi:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public class DetailsViewDeleteEventArgs : CancelEventArgs
/** @attribute AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal) */
/** @attribute AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal) */
public class DetailsViewDeleteEventArgs extends CancelEventArgs
public class DetailsViewDeleteEventArgs extends CancelEventArgs

Il controllo DetailsView genera l'evento ItemDeleting quando viene fatto clic su un pulsante Elimina (un pulsante con la relativa proprietà CommandName impostata su "Delete") all'interno del controllo, ma prima che il record venga eliminato dal controllo DetailsView. In questo modo è possibile fornire un gestore eventi in grado di eseguire una routine personalizzata, ad esempio la verifica di un record prima dell'eliminazione, ogni volta che si verifica questo evento.

Un oggetto DetailsViewDeletedEventArgs viene passato al gestore eventi ed è quindi possibile determinare l'indice del record da eliminare e indicare che l'operazione di eliminazione deve essere annullata. Per determinare l'indice di un record, utilizzare la proprietà RowIndex. Per annullare l'operazione di eliminazione, impostare la proprietà Cancel su true. Per accedere ai campi chiave e non chiave, è inoltre possibile utilizzare rispettivamente le proprietà Keys e Values. Questi valori sono utili se si desidera verificare il record prima di eliminarlo.

Nota:

È possibile modificare i valori dei campi chiave nella proprietà Keys. Se si modificano questi valori, verrà eliminato il record che corrisponde ai nuovi valori dei campi chiave.

Per ulteriori informazioni sulla gestione di eventi, vedere Utilizzo degli eventi.

Per un elenco dei valori iniziali delle proprietà di un'istanza della classe DetailsViewDeleteEventArgs, vedere il costruttore DetailsViewDeleteEventArgs.

Nell'esempio di codice riportato di seguito viene illustrato come utilizzare l'oggetto DetailsViewDeleteEventArgs passato al gestore eventi per l'evento ItemDeleting allo scopo di annullare un'operazione di eliminazione.


<%@ 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_ItemDeleting(Object sender, 
    DetailsViewDeleteEventArgs e)
  {

    // Get customer ID and name from the Keys and Values
    // properties.
    String keyValue = e.Keys["CustomerID"].ToString();
    String customerName = e.Values["CompanyName"].ToString();

    // Cancel the delete operation if the user attempts to 
    // delete protected record. In this example, records
    // with a customer ID that starts with with "A" cannot
    // be deleted.
    if (keyValue.StartsWith("A"))
    {
      e.Cancel = true;
      MessageLabel.Text = "You cannot delete " +
        customerName + ". This customer is protected.";
    }
    else
    {
      MessageLabel.Text = "Row " + e.RowIndex.ToString() + 
        " deleted.";
    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewDeleteEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>DetailsViewDeleteEventArgs Example</h3>

        <asp:detailsview id="CustomerDetailsView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogeneratedeletebutton="true"  
          autogeneraterows="true"
          allowpaging="true"
          onitemdeleting="CustomerDetailsView_ItemDeleting" 
          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]"
          deletecommand="Delete [Customers] 
            Where [CustomerID]=@CustomerID"
          connectionstring=
            "<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>

      </form>
  </body>
</html>



System.Object
  System.EventArgs
    System.ComponentModel.CancelEventArgs
      System.Web.UI.WebControls.DetailsViewDeleteEventArgs

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0
Mostra: