(0) exportieren Drucken
Alle erweitern

FormView.ItemDeleting-Ereignis

Tritt ein, wenn in einem FormView-Steuerelement auf eine Schaltfläche Löschen geklickt wird, allerdings bevor der Löschvorgang ausgeführt wird.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

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

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

In JScript können Sie die durch eine Klasse definierten Ereignisse verwenden, jedoch keine eigenen definieren.
Nicht zutreffend.

Das FormView-Steuerelement löst das ItemDeleting-Ereignis aus, wenn auf eine Schaltfläche Löschen (eine Schaltfläche, deren CommandName-Eigenschaft auf "Delete" festgelegt wurde) innerhalb des Steuerelements geklickt wird. Dabei wird das Ereignis ausgelöst, bevor das FormView-Steuerelement den Datensatz gelöscht hat. Dadurch können Sie eine Ereignisbehandlungsmethode bereitstellen, die bei jedem Auftreten dieses Ereignisses eine benutzerdefinierte Routine ausführt, beispielsweise das Überprüfen eines Datensatzes, bevor dieser gelöscht wird.

Ein FormViewDeleteEventArgs-Objekt wird an die Ereignisbehandlungsmethode übergeben. So können Sie den Index des Datensatzes, der gelöscht wird, bestimmen und angeben, dass der Löschvorgang abgebrochen werden soll. Sie können den Index eines Datensatzes mithilfe der RowIndex-Eigenschaft ermitteln. Legen Sie die Cancel-Eigenschaft auf true fest, um den Löschvorgang abzubrechen. Sie können außerdem auf die Schüsselfelder und Nicht-Schlüsselfelder zugreifen, indem Sie die Keys-Eigenschaft bzw. die Values-Eigenschaft verwenden.

Weitere Informationen über die Behandlung von Ereignissen finden Sie unter Behandeln von Ereignissen.

Das folgende Beispiel veranschaulicht, wie mit dem ItemDeleting-Ereignis ein Löschvorgang abgebrochen wird.


<%@ 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 für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2014 Microsoft