Represents the method that handles the ItemDeleting event of a DetailsView control.
Assembly: System.Web (in System.Web.dll)
Public Delegate Sub DetailsViewDeleteEventHandler ( _ sender As Object, _ e As DetailsViewDeleteEventArgs _ )
public delegate void DetailsViewDeleteEventHandler( Object sender, DetailsViewDeleteEventArgs e )
public delegate void DetailsViewDeleteEventHandler( Object^ sender, DetailsViewDeleteEventArgs^ e )
type DetailsViewDeleteEventHandler = delegate of sender:Object * e:DetailsViewDeleteEventArgs -> unit
Parameters
- sender
- Type: System.Object
The source of the event.
- e
- Type: System.Web.UI.WebControls.DetailsViewDeleteEventArgs
A DetailsViewDeleteEventArgs that contains the event data.
The DetailsView control raises the ItemDeleting event when a Delete button (a button with its CommandName property set to "Delete") within the control is clicked, but after the DetailsView control deletes the record. This allows you to provide an event handler that performs a custom routine, such as checking the results of a delete operation, whenever this event occurs.
When you create a DetailsViewDeleteEventHandler delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see Events and Delegates.
The following code example demonstrates how to programmatically add a DetailsViewDeleteEventHandler delegate to the ItemDeleting event of a DetailsView control.
<%@ 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 Page_Load(ByVal sender As Object, ByVal e As EventArgs) ' Create a new DetailsView object. Dim customerDetailsView As New DetailsView() ' Set the DetailsView object's properties. customerDetailsView.ID = "CustomerDetailsView" customerDetailsView.DataSourceID = "DetailsViewSource" customerDetailsView.AutoGenerateRows = True customerDetailsView.AutoGenerateDeleteButton = True customerDetailsView.AllowPaging = True customerDetailsView.PagerSettings.Mode = PagerButtons.NextPrevious Dim keyArray() As String = {"CustomerID"} customerDetailsView.DataKeyNames = keyArray ' Programmatically register the event-handling method ' for the ItemDeleting event of a DetailsView control. AddHandler customerDetailsView.ItemDeleting, AddressOf CustomerDetailsView_ItemDeleting ' Add the DetailsView object to the Controls collection ' of the PlaceHolder control. DetailsViewPlaceHolder.Controls.Add(customerDetailsView) End Sub Sub CustomerDetailsView_ItemDeleting(ByVal sender As Object, ByVal e As DetailsViewDeleteEventArgs) ' Get customer ID and name from the Keys and Values ' properties. Dim keyValue As String = e.Keys("CustomerID").ToString() Dim customerName As String = 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") Then e.Cancel = True MessageLabel.Text = "You cannot delete " & _ customerName & ". This customer is protected." Else MessageLabel.Text = "Row " & e.RowIndex.ToString() & _ " deleted." End If End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>DetailsViewDeleteEventHandler Example</title> </head> <body> <form id="form1" runat="server"> <h3>DetailsViewDeleteEventHandler Example</h3> <!-- Use a PlaceHolder control as the container for the --> <!-- dynamically generated DetailsView control. --> <asp:PlaceHolder id="DetailsViewPlaceHolder" runat="server"/> <br/><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]" deletecommand="Delete [Customers] Where [CustomerID]=@CustomerID" connectionstring= "<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
<%@ 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 Page_Load(Object sender, EventArgs e) { // Create a new DetailsView object. DetailsView customerDetailsView = new DetailsView(); // Set the DetailsView object's properties. customerDetailsView.ID = "CustomerDetailsView"; customerDetailsView.DataSourceID = "DetailsViewSource"; customerDetailsView.AutoGenerateRows = true; customerDetailsView.AutoGenerateDeleteButton = true; customerDetailsView.AllowPaging = true; customerDetailsView.PagerSettings.Mode = PagerButtons.NextPrevious; customerDetailsView.DataKeyNames = new String[1] { "CustomerID" }; // Programmatically register the event-handling method // for the ItemDeleting event of a DetailsView control. customerDetailsView.ItemDeleting += new DetailsViewDeleteEventHandler(this.CustomerDetailsView_ItemDeleting); // Add the DetailsView object to the Controls collection // of the PlaceHolder control. DetailsViewPlaceHolder.Controls.Add(customerDetailsView); } 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>DetailsViewDeleteEventHandler Example</title> </head> <body> <form id="form1" runat="server"> <h3>DetailsViewDeleteEventHandler Example</h3> <!-- Use a PlaceHolder control as the container for the --> <!-- dynamically generated DetailsView control. --> <asp:PlaceHolder id="DetailsViewPlaceHolder" runat="server"/> <br/><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]" deletecommand="Delete [Customers] Where [CustomerID]=@CustomerID" connectionstring= "<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
The following code example demonstrates how to declaratively add a DetailsViewDeleteEventHandler delegate to the ItemDeleting event of a DetailsView control.
<%@ page language="VB" autoeventwireup="false"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Sub CustomerDetailsView_ItemDeleting(ByVal sender As Object, _ ByVal e As DetailsViewDeleteEventArgs) _ Handles CustomerDetailsView.ItemDeleting ' Get customer ID and name from the Keys and Values ' properties. Dim keyValue As String = e.Keys("CustomerID").ToString() Dim customerName As String = 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") Then e.Cancel = True MessageLabel.Text = "You cannot delete " & _ customerName & ". This customer is protected." Else MessageLabel.Text = "Row " & e.RowIndex.ToString() & _ " deleted." End If End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>DetailsViewDeleteEventHandler Example</title> </head> <body> <form id="form1" runat="server"> <h3>DetailsViewDeleteEventHandler Example</h3> <asp:detailsview id="CustomerDetailsView" datasourceid="DetailsViewSource" autogeneraterows="true" autogeneratedeletebutton="true" allowpaging="true" datakeynames="CustomerID" runat="server"> <pagersettings mode="NextPrevious"/> </asp:detailsview> <br/><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]" deletecommand="Delete [Customers] Where [CustomerID]=@CustomerID" connectionstring= "<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
<%@ 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>DetailsViewDeleteEventHandler Example</title> </head> <body> <form id="form1" runat="server"> <h3>DetailsViewDeleteEventHandler Example</h3> <asp:detailsview id="CustomerDetailsView" datasourceid="DetailsViewSource" autogeneraterows="true" autogeneratedeletebutton="true" allowpaging="true" datakeynames="CustomerID" onitemdeleting="CustomerDetailsView_ItemDeleting" runat="server"> <pagersettings mode="NextPrevious"/> </asp:detailsview> <br/><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]" deletecommand="Delete [Customers] Where [CustomerID]=@CustomerID" connectionstring= "<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.