CommandField Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents a special field that displays command buttons to perform selecting, editing, inserting, or deleting operations in a data-bound control.
public ref class CommandField : System::Web::UI::WebControls::ButtonFieldBase
public class CommandField : System.Web.UI.WebControls.ButtonFieldBase
type CommandField = class
inherit ButtonFieldBase
Public Class CommandField
Inherits ButtonFieldBase
- Inheritance
Examples
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>
<%@ Page language="VB" %>
<!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>
<%@ Page language="VB" %>
<!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>
Remarks
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. Note: 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.
Note
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. Note: This property applies only to data-bound controls that support insert operations, such as the DetailsView control. |
NewText | The caption for the New button. Note: 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. Note: 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. Note: 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
.
Note
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. |
Constructors
CommandField() |
Initializes a new instance of the CommandField class. |
Properties
AccessibleHeaderText |
Gets or sets text that is rendered as the |
ButtonType |
Gets or sets the button type to display in the button field. (Inherited from ButtonFieldBase) |
CancelImageUrl |
Gets or sets the URL to an image to display for the Cancel button in a CommandField field. |
CancelText |
Gets or sets the caption for the Cancel button displayed in a CommandField field. |
CausesValidation |
Gets or sets a value indicating whether validation is performed when the user clicks a button in a CommandField field. |
Control |
Gets a reference to the data control that the DataControlField object is associated with. (Inherited from DataControlField) |
ControlStyle |
Gets the style of any Web server controls contained by the DataControlField object. (Inherited from DataControlField) |
DeleteImageUrl |
Gets or sets the URL to an image to display for a Delete button in a CommandField field. |
DeleteText |
Gets or sets the caption for a Delete button in a CommandField field. |
DesignMode |
Gets a value indicating whether a data control field is currently viewed in a design-time environment. (Inherited from DataControlField) |
EditImageUrl |
Gets or sets the URL to an image to display for an Edit button in a CommandField field. |
EditText |
Gets or sets the caption for an Edit button in a CommandField field. |
FooterStyle |
Gets or sets the style of the footer of the data control field. (Inherited from DataControlField) |
FooterText |
Gets or sets the text that is displayed in the footer item of a data control field. (Inherited from DataControlField) |
HeaderImageUrl |
Gets or sets the URL of an image that is displayed in the header item of a data control field. (Inherited from DataControlField) |
HeaderStyle |
Gets or sets the style of the header of the data control field. (Inherited from DataControlField) |
HeaderText |
Gets or sets the text that is displayed in the header item of a data control field. (Inherited from DataControlField) |
InsertImageUrl |
Gets or sets the URL to an image to display for the Insert button in a CommandField field. |
InsertText |
Gets or sets the caption for the Insert button in a CommandField field. |
InsertVisible |
Gets a value indicating whether the DataControlField object is visible when its parent data-bound control is in insert mode. (Inherited from DataControlField) |
IsTrackingViewState |
Gets a value indicating whether the DataControlField object is saving changes to its view state. (Inherited from DataControlField) |
ItemStyle |
Gets the style of any text-based content displayed by a data control field. (Inherited from DataControlField) |
NewImageUrl |
Gets or sets the URL to an image to display for the New button in a CommandField field. |
NewText |
Gets or sets the caption for the New button in a CommandField field. |
SelectImageUrl |
Gets or sets the URL to an image to display for a Select button in a CommandField field. |
SelectText |
Gets or sets the caption for a Select button in a CommandField field. |
ShowCancelButton |
Gets or sets a value indicating whether a Cancel button is displayed in a CommandField field. |
ShowDeleteButton |
Gets or sets a value indicating whether a Delete button is displayed in a CommandField field. |
ShowEditButton |
Gets or sets a value indicating whether an Edit button is displayed in a CommandField field. |
ShowHeader |
Gets or sets a value indicating whether the header section is displayed in a ButtonFieldBase object. (Inherited from ButtonFieldBase) |
ShowInsertButton |
Gets or sets a value indicating whether a New button is displayed in a CommandField field. |
ShowSelectButton |
Gets or sets a value indicating whether a Select button is displayed in a CommandField field. |
SortExpression |
Gets or sets a sort expression that is used by a data source control to sort data. (Inherited from DataControlField) |
UpdateImageUrl |
Gets or sets the URL to an image to display for an Update button in a CommandField field. |
UpdateText |
Gets or sets the caption for an Update button in a CommandField field. |
ValidateRequestMode |
Gets or sets a value that specifies whether the control validates client input. (Inherited from DataControlField) |
ValidationGroup |
Gets or sets the name of the group of validation controls to validate when a button in a ButtonFieldBase object is clicked. (Inherited from ButtonFieldBase) |
ViewState |
Gets 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) |
Visible |
Gets or sets a value indicating whether a data control field is rendered. (Inherited from DataControlField) |
Methods
CloneField() |
Creates a duplicate copy of the current DataControlField-derived object. (Inherited from DataControlField) |
CopyProperties(DataControlField) |
Copies the properties of the current CommandField object to the specified DataControlField object. |
CreateField() |
Creates an empty CommandField object. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean) |
Extracts the value of the data control field from the current table cell and adds the value to the specified IDictionary collection. (Inherited from DataControlField) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
Initialize(Boolean, Control) |
Performs basic instance initialization for a data control field. (Inherited from DataControlField) |
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) |
Initializes the specified DataControlFieldCell object to the specified row state. |
LoadViewState(Object) |
Restores the data source view's previously saved view state. (Inherited from DataControlField) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
OnFieldChanged() |
Raises the |
SaveViewState() |
Saves the changes made to the DataControlField view state since the time the page was posted back to the server. (Inherited from DataControlField) |
ToString() |
Returns a string that represents this DataControlField object. (Inherited from DataControlField) |
TrackViewState() |
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) |
ValidateSupportsCallback() |
Determines whether the controls contained in a CommandField object support callbacks. |
Explicit Interface Implementations
IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Gets or sets the schema associated with this DataControlField object. (Inherited from DataControlField) |
IStateManager.IsTrackingViewState |
Gets a value indicating whether the DataControlField object is saving changes to its view state. (Inherited from DataControlField) |
IStateManager.LoadViewState(Object) |
Restores the data control field's previously saved view state. (Inherited from DataControlField) |
IStateManager.SaveViewState() |
Saves the changes made to the DataControlField view state since the time the page was posted back to the server. (Inherited from DataControlField) |
IStateManager.TrackViewState() |
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) |
Applies to
See also
- GridView
- Columns
- DetailsView
- Fields
- BoundField
- ButtonField
- ButtonFieldBase
- CheckBoxField
- DataControlField
- HyperLinkField
- TemplateField
- ButtonType
- CancelText
- DeleteImageUrl
- DeleteText
- EditImageUrl
- EditText
- InsertImageUrl
- InsertText
- NewImageUrl
- NewText
- SelectImageUrl
- SelectText
- ShowCancelButton
- ShowDeleteButton
- ShowEditButton
- ShowInsertButton
- ShowSelectButton
- UpdateImageUrl
- UpdateText
- ControlStyle
- FooterStyle
- HeaderStyle
- ItemStyle