Export (0) Print
Expand All

CommandField Class

Represents a special field that displays command buttons to perform selecting, editing, inserting, or deleting operations in a data-bound control.

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

public class CommandField : ButtonFieldBase

The CommandField type exposes the following members.

  NameDescription
Public methodCommandFieldInitializes a new instance of the CommandField class.
Top

  NameDescription
Public propertyAccessibleHeaderTextGets or sets text that is rendered as the AbbreviatedText property value in some controls. (Inherited from DataControlField.)
Public propertyButtonTypeGets or sets the button type to display in the button field. (Inherited from ButtonFieldBase.)
Public propertyCancelImageUrlGets or sets the URL to an image to display for the Cancel button in a CommandField field.
Public propertyCancelTextGets or sets the caption for the Cancel button displayed in a CommandField field.
Public propertyCausesValidationGets or sets a value indicating whether validation is performed when the user clicks a button in a CommandField field. (Overrides ButtonFieldBase.CausesValidation.)
Protected propertyControlGets a reference to the data control that the DataControlField object is associated with. (Inherited from DataControlField.)
Public propertyControlStyleGets the style of any Web server controls contained by the DataControlField object. (Inherited from DataControlField.)
Public propertyDeleteImageUrlGets or sets the URL to an image to display for a Delete button in a CommandField field.
Public propertyDeleteTextGets or sets the caption for a Delete button in a CommandField field.
Protected propertyDesignModeGets a value indicating whether a data control field is currently viewed in a design-time environment. (Inherited from DataControlField.)
Public propertyEditImageUrlGets or sets the URL to an image to display for an Edit button in a CommandField field.
Public propertyEditTextGets or sets the caption for an Edit button in a CommandField field.
Public propertyFooterStyleGets or sets the style of the footer of the data control field. (Inherited from DataControlField.)
Public propertyFooterTextGets or sets the text that is displayed in the footer item of a data control field. (Inherited from DataControlField.)
Public propertyHeaderImageUrlGets or sets the URL of an image that is displayed in the header item of a data control field. (Inherited from DataControlField.)
Public propertyHeaderStyleGets or sets the style of the header of the data control field. (Inherited from DataControlField.)
Public propertyHeaderTextGets or sets the text that is displayed in the header item of a data control field. (Inherited from DataControlField.)
Public propertyInsertImageUrlGets or sets the URL to an image to display for the Insert button in a CommandField field.
Public propertyInsertTextGets or sets the caption for the Insert button in a CommandField field.
Public propertyInsertVisibleGets a value indicating whether the DataControlField object is visible when its parent data-bound control is in insert mode. (Inherited from DataControlField.)
Protected propertyIsTrackingViewStateGets a value indicating whether the DataControlField object is saving changes to its view state. (Inherited from DataControlField.)
Public propertyItemStyleGets the style of any text-based content displayed by a data control field. (Inherited from DataControlField.)
Public propertyNewImageUrlGets or sets the URL to an image to display for the New button in a CommandField field.
Public propertyNewTextGets or sets the caption for the New button in a CommandField field.
Public propertySelectImageUrlGets or sets the URL to an image to display for a Select button in a CommandField field.
Public propertySelectTextGets or sets the caption for a Select button in a CommandField field.
Public propertyShowCancelButtonGets or sets a value indicating whether a Cancel button is displayed in a CommandField field.
Public propertyShowDeleteButtonGets or sets a value indicating whether a Delete button is displayed in a CommandField field.
Public propertyShowEditButtonGets or sets a value indicating whether an Edit button is displayed in a CommandField field.
Public propertyShowHeaderGets or sets a value indicating whether the header section is displayed in a ButtonFieldBase object. (Inherited from ButtonFieldBase.)
Public propertyShowInsertButtonGets or sets a value indicating whether a New button is displayed in a CommandField field.
Public propertyShowSelectButtonGets or sets a value indicating whether a Select button is displayed in a CommandField field.
Public propertySortExpressionGets or sets a sort expression that is used by a data source control to sort data. (Inherited from DataControlField.)
Public propertyUpdateImageUrlGets or sets the URL to an image to display for an Update button in a CommandField field.
Public propertyUpdateTextGets or sets the caption for an Update button in a CommandField field.
Protected propertyValidateRequestModeGets or sets a value that specifies whether the control validates client input. (Inherited from DataControlField.)
Public propertyValidationGroupGets or sets the name of the group of validation controls to validate when a button in a ButtonFieldBase object is clicked. (Inherited from ButtonFieldBase.)
Protected propertyViewStateGets a dictionary of state information that allows you to save and restore the view state of a DataControlField object across multiple requests for the same page. (Inherited from DataControlField.)
Public propertyVisibleGets or sets a value indicating whether a data control field is rendered. (Inherited from DataControlField.)
Top

  NameDescription
Protected methodCloneFieldInfrastructure. Creates a duplicate copy of the current DataControlField-derived object. (Inherited from DataControlField.)
Protected methodCopyPropertiesCopies the properties of the current CommandField object to the specified DataControlField object. (Overrides ButtonFieldBase.CopyProperties(DataControlField).)
Protected methodCreateFieldCreates an empty CommandField object. (Overrides DataControlField.CreateField().)
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public methodExtractValuesFromCellExtracts the value of the data control field from the current table cell and adds the value to the specified IDictionary collection. (Inherited from DataControlField.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodInitializePerforms basic instance initialization for a data control field. (Inherited from DataControlField.)
Public methodInitializeCellInitializes the specified DataControlFieldCell object to the specified row state. (Overrides DataControlField.InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32).)
Protected methodLoadViewStateRestores the data source view's previously saved view state. (Inherited from DataControlField.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodOnFieldChangedRaises the FieldChanged event. (Inherited from DataControlField.)
Protected methodSaveViewStateSaves the changes made to the DataControlField view state since the time the page was posted back to the server. (Inherited from DataControlField.)
Public methodToStringReturns a string that represents this DataControlField object. (Inherited from DataControlField.)
Protected methodTrackViewStateCauses the DataControlField object to track changes to its view state so they can be stored in the control's ViewState property and persisted across requests for the same page. (Inherited from DataControlField.)
Public methodValidateSupportsCallbackDetermines whether the controls contained in a CommandField object support callbacks. (Overrides DataControlField.ValidateSupportsCallback().)
Top

  NameDescription
Explicit interface implemetationPrivate propertyIDataSourceViewSchemaAccessor.DataSourceViewSchemaInfrastructure. Gets or sets the schema associated with this DataControlField object. (Inherited from DataControlField.)
Explicit interface implemetationPrivate propertyIStateManager.IsTrackingViewStateInfrastructure. Gets a value indicating whether the DataControlField object is saving changes to its view state. (Inherited from DataControlField.)
Explicit interface implemetationPrivate methodIStateManager.LoadViewStateInfrastructure. Restores the data control field's previously saved view state. (Inherited from DataControlField.)
Explicit interface implemetationPrivate methodIStateManager.SaveViewStateInfrastructure. Saves the changes made to the DataControlField view state since the time the page was posted back to the server. (Inherited from DataControlField.)
Explicit interface implemetationPrivate methodIStateManager.TrackViewStateInfrastructure. Causes the DataControlField object to track changes to its view state so they can be stored in the control's ViewState property and persisted across requests for the same page. (Inherited from DataControlField.)
Top

The CommandField class is a special field used by data-bound controls (such as GridView and DetailsView) to display command buttons that perform delete, edit, insert, or select operations. The command buttons to perform these operations can be shown or hidden using the properties shown in the following table.

Property

Description

ShowDeleteButton

Shows or hides a Delete button in a CommandField field for each record in the data-bound control. The Delete button allows the user to delete a record from the data source.

ShowEditButton

Shows or hides an Edit button in a CommandField field for each record in the data-bound control. The Edit button allows the user to edit a record from the data source. When the user clicks the Edit button for a specific record, that Edit button is replaced with an Update button and a Cancel button. All other command buttons are also hidden.

ShowInsertButton

Shows or hides the New button in a CommandField field. The New button allows the user to insert a new record in the data source. When the user clicks the New button, it is replaced with an Insert button and a Cancel button. All other command buttons are also hidden.

NoteNote

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

ShowSelectButton

Shows or hides a Select button in a CommandField field for each record in the data-bound control. The Select button allows the user to select a record in the data-bound control.

In addition, the Cancel button displayed when a record is in edit or insert mode can be shown or hidden by setting the ShowCancelButton property.

NoteNote

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 delete, update, and insert functionality. For other data sources, you need to provide the routines to perform these operations during the appropriate events for the data-bound control.

The CommandField field is displayed differently depending on the data-bound control in which it is used. For example, the GridView control displays a CommandField field as a column, while the DetailsView control displays it as a row.

To specify the type of button to display, use the ButtonType property. When the ButtonType property is set to ButtonType.Button or ButtonType.Link, you can specify the text to display for the buttons by setting the properties shown in the following table.

Property

Description

CancelText

The caption for the Cancel button.

DeleteText

The caption for the Delete button.

EditText

The caption for the Edit button.

InsertText

The caption for the Insert button.

NoteNote

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

NewText

The caption for the New button.

NoteNote

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

SelectText

The caption for the Select button.

UpdateText

The caption for the Update button.

Instead of displaying a command button or a link button, you can display an image button by setting the ButtonType property to ButtonType.Image and then setting the properties shown in the following table.

Property

Description

CancelImageUrl

The image to display for the Cancel button

DeleteImageUrl

The image to display for the Delete button.

EditImageUrl

The image to display for the Edit button.

InsertText

The image to display for the Insert button.

NoteNote

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

NewImageUrl

The image to display for the New button.

NoteNote

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

SelectImageUrl

The image to display for the Select button.

UpdateImageUrl

The image to display for the Update button.

By default, when the user clicks a button in a CommandField field, validation is performed on all validation controls on the page. To prevent validation from occurring when a button is clicked, set the CausesValidation property to false.

You can hide a CommandField field in a data-bound control by setting the Visible property to false.

The CommandField field allows you to customize its header and footer sections. To display a caption in the header or the footer section, set the HeaderText or the FooterText property, respectively. Instead of displaying text in the header section, you can display an image by setting the HeaderImageUrl property. To hide the header section in a CommandField object, set the ShowHeader property to false.

NoteNote

Some data-bound controls (such as the GridView control) can show or hide only the entire header section of the control. These data-bound controls do not support the ShowHeader property for an individual button field. To show or hide the entire header section of a data-bound control (if available), use the control's ShowHeader property.

You also can customize the appearance of the CommandField object (font color, background color, and so on) by setting the style properties for the different parts of the field. The following table lists the different style properties.

Style property

Description

ControlStyle

The style settings for the child Web server controls of the CommandField object.

FooterStyle

The style settings for the footer section of the CommandField object.

HeaderStyle

The style settings for the header section of the CommandField object.

ItemStyle

The style settings for the data items in the CommandField object.

The following code example demonstrates how to use a CommandField field to display controls to edit a record in a GridView control.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">

        <columns>
          <asp:commandfield showeditbutton="true"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>

      </asp:gridview>

      <!-- 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]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>

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

The following code example demonstrates how to use the CancelText, EditText, and UpdateText properties to customize the text for the editing controls.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">

        <columns>
          <asp:commandfield showeditbutton="true"
            edittext="Edit Customer"
            canceltext="Discard"
            updatetext="Revise"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>

      </asp:gridview>

      <!-- 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]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>

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

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft