This documentation is archived and is not being maintained.

CommandField.ShowInsertButton Property

Gets or sets a value indicating whether a New button is displayed in a CommandField field.

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

public virtual bool ShowInsertButton { get; set; }

Property Value

Type: System.Boolean
true to display a New button in a CommandField; otherwise, false. The default is false.

Use the ShowInsertButton property to specify whether a New button is displayed in a CommandField field. The New button is displayed only once in the CommandField field and allows the user to add a new record in the data source.


This property applies only to data-bound controls that support insert operations, such as the DetailsView control.

When the user clicks the New button, input controls are displayed for each field displayed in the data-bound control, allowing the user to enter the values for the new record. The New button is replaced with an Insert button and a Cancel button, and all other command buttons in the CommandField field are hidden. Clicking the Insert button adds the record to the data source, whereas clicking the Cancel button cancels the operation.


When a data-bound control is used in combination with a data source control (such as a SqlDataSource control), the data-bound control can take advantage of the data source control's capabilities and provide automatic insert functionality. For other data sources, you must provide the routines to perform the insert operation during the appropriate event for the data-bound control.

When the ButtonType property of a CommandField field is set to ButtonType.Button or ButtonType.Link, use the NewText property to specify the text to display for a New button. Alternatively, you can display an image by first setting the ButtonType property to ButtonType.Image and then setting the NewImageUrl property.

The following code example demonstrates how to use the ShowInsertButton property to display a New button in a DetailsView control, which allows the user to add a new record to the data source.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="" >
  <head runat="server">
    <title>CommandField Example</title>
    <form id="form1" runat="server">

      <h3>CommandField Example</h3>

      <asp:detailsview id="CustomersGridView" 

          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
          <asp:boundfield datafield="Address"
          <asp:boundfield datafield="City"
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
          <asp:commandfield showinsertbutton="true"
            headertext="Add Customer"/>


      <!-- 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="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        insertcommand="Insert Into [Customers]([CustomerID], [CompanyName], [City], [PostalCode], [Country]) Values (@CustomerID, @CompanyName, @City, @PostalCode, @Country)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 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.