DetailsView.AutoGenerateDeleteButton Property

Note: This property is new in the .NET Framework version 2.0.

Gets or sets a value indicating whether the built-in control to delete the current record is displayed in a DetailsView control.

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

public virtual bool AutoGenerateDeleteButton { get; set; }
/** @property */
public boolean get_AutoGenerateDeleteButton ()

/** @property */
public void set_AutoGenerateDeleteButton (boolean value)

public function get AutoGenerateDeleteButton () : boolean

public function set AutoGenerateDeleteButton (value : boolean)

Property Value

true to display the built-in control to delete the current record; otherwise, false. The default is false.

When a DetailsView control is bound to an object that inherits from DataSourceView and the CanDelete property returns true, the DetailsView control can take advantage of the data source control's capabilities and provide automatic deleting functionality.


For a SqlDataSourceView object to delete data, the SqlDataSource.DeleteCommand property of the underlying SqlDataSource object must be set with a delete query statement.

When the AutoGenerateDeleteButton property is set to true, a CommandField row field with a Delete button is automatically displayed in the DetailsView control. Clicking the Delete button permanently removes that record from the data source.


You must also set the DataKeyNames property for the automatic deletion feature to work.

The DetailsView control provides several events that you can use to perform a custom action when a record is deleted. The following table lists the available events.




Occurs when the Delete button is clicked, but after the DetailsView control deletes the record from the data source. This event is often used to check the results of the delete operation.


Occurs when the Delete button is clicked, but before the DetailsView control deletes the record from the data source. This event is often used to cancel the delete operation.

The value of AutoGenerateDeleteButton is stored in view state.

The following code example demonstrates how to use the AutoGenerateDeleteButton property to display the built-in control to delete the current record.

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

    <form id="Form1" runat="server">
      <h3>DetailsView AutoGenerateDeleteButton Example</h3>
        <asp:detailsview id="CustomersDetailView"
          <headerstyle backcolor="Navy"
        <!-- 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" runat="server" 
              "<%$ ConnectionStrings:NorthWindConnectionString%>"
            InsertCommand="INSERT INTO [Customers]([CustomerID], 
              [CompanyName], [Address], [City], [PostalCode], [Country]) 
              VALUES (@CustomerID, @CompanyName, @Address, @City, 
              @PostalCode, @Country)"
            SelectCommand="Select [CustomerID], [CompanyName], 
              [Address], [City], [PostalCode], [Country] From 

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

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0

Community Additions