Compartir por


CommandField Clase

Definición

Representa un campo especial que muestra botones de comando para realizar operaciones de selección, edición, inserción o eliminación en un control enlazado a datos.

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
Herencia

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un CommandField campo para mostrar controles para editar un registro en un 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>

En el ejemplo de código siguiente se muestra cómo usar las CancelTextpropiedades , EditTexty UpdateText para personalizar el texto de los controles de edición.


<%@ 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>

Comentarios

La CommandField clase es un campo especial que usan los controles enlazados a datos (como GridView y DetailsView) para mostrar botones de comando que realizan operaciones de eliminación, edición, inserción o selección. Los botones de comando para realizar estas operaciones se pueden mostrar u ocultar mediante las propiedades que se muestran en la tabla siguiente.

Propiedad Descripción
ShowDeleteButton Muestra u oculta un botón Eliminar en un CommandField campo para cada registro del control enlazado a datos. El botón Eliminar permite al usuario eliminar un registro del origen de datos.
ShowEditButton Muestra u oculta un botón Editar en un CommandField campo para cada registro del control enlazado a datos. El botón Editar permite al usuario editar un registro desde el origen de datos. Cuando el usuario hace clic en el botón Editar de un registro específico, ese botón Editar se reemplaza por un botón Actualizar y un botón Cancelar. Todos los demás botones de comando también están ocultos.
ShowInsertButton Muestra u oculta el botón Nuevo en un CommandField campo. El botón Nuevo permite al usuario insertar un nuevo registro en el origen de datos. Cuando el usuario hace clic en el botón Nuevo, se reemplaza por un botón Insertar y un botón Cancelar. Todos los demás botones de comando también están ocultos. Nota: Esta propiedad solo se aplica a los controles enlazados a datos que admiten operaciones de inserción, como el DetailsView control .
ShowSelectButton Muestra u oculta un botón Seleccionar en un CommandField campo para cada registro del control enlazado a datos. El botón Seleccionar permite al usuario seleccionar un registro en el control enlazado a datos.

Además, el botón Cancelar que se muestra cuando un registro está en modo de edición o inserción se puede mostrar u ocultar estableciendo la ShowCancelButton propiedad .

Nota:

Cuando se usa un control enlazado a datos en combinación con un control de origen de datos (como un SqlDataSource control), el control enlazado a datos puede aprovechar las funcionalidades del control de origen de datos y proporcionar funcionalidades automáticas de eliminación, actualización e inserción. Para otros orígenes de datos, debe proporcionar las rutinas para realizar estas operaciones durante los eventos adecuados para el control enlazado a datos.

El CommandField campo se muestra de forma diferente en función del control enlazado a datos en el que se usa. Por ejemplo, el GridView control muestra un CommandField campo como una columna, mientras que el DetailsView control lo muestra como una fila.

Para especificar el tipo de botón que se va a mostrar, use la ButtonType propiedad . Cuando la ButtonType propiedad se establece ButtonType.Button en o ButtonType.Link, puede especificar el texto que se va a mostrar para los botones estableciendo las propiedades que se muestran en la tabla siguiente.

Propiedad Descripción
CancelText Título del botón Cancelar.
DeleteText Título del botón Eliminar.
EditText Título del botón Editar.
InsertText Título del botón Insertar. Nota: Esta propiedad solo se aplica a los controles enlazados a datos que admiten operaciones de inserción, como el DetailsView control .
NewText Título del botón Nuevo. Nota: Esta propiedad solo se aplica a los controles enlazados a datos que admiten operaciones de inserción, como el DetailsView control .
SelectText Título del botón Seleccionar.
UpdateText Título del botón Actualizar.

En lugar de mostrar un botón de comando o un botón de vínculo, puede mostrar un botón de imagen estableciendo la ButtonType propiedad ButtonType.Image en y estableciendo las propiedades que se muestran en la tabla siguiente.

Propiedad Descripción
CancelImageUrl Imagen que se va a mostrar para el botón Cancelar
DeleteImageUrl Imagen que se va a mostrar para el botón Eliminar.
EditImageUrl Imagen que se va a mostrar para el botón Editar.
InsertText Imagen que se va a mostrar para el botón Insertar. Nota: Esta propiedad solo se aplica a los controles enlazados a datos que admiten operaciones de inserción, como el DetailsView control .
NewImageUrl Imagen que se va a mostrar para el botón Nuevo. Nota: Esta propiedad solo se aplica a los controles enlazados a datos que admiten operaciones de inserción, como el DetailsView control .
SelectImageUrl Imagen que se va a mostrar para el botón Seleccionar.
UpdateImageUrl Imagen que se va a mostrar para el botón Actualizar.

De forma predeterminada, cuando el usuario hace clic en un botón en un CommandField campo, la validación se realiza en todos los controles de validación de la página. Para evitar que se produzca la validación cuando se hace clic en un botón, establezca la CausesValidation propiedad falseen .

Puede ocultar un CommandField campo en un control enlazado a datos estableciendo la Visible propiedad falseen .

El CommandField campo permite personalizar sus secciones de encabezado y pie de página. Para mostrar un título en el encabezado o en la sección pie de página, establezca la HeaderText propiedad o FooterText , respectivamente. En lugar de mostrar texto en la sección de encabezado, puede mostrar una imagen estableciendo la HeaderImageUrl propiedad . Para ocultar la sección de encabezado en un CommandField objeto , establezca la ShowHeader propiedad falseen .

Nota:

Algunos controles enlazados a datos (como el GridView control) pueden mostrar u ocultar solo la sección de encabezado completa del control. Estos controles enlazados a datos no admiten la ShowHeader propiedad para un campo de botón individual. Para mostrar u ocultar toda la sección de encabezado de un control enlazado a datos (si está disponible), use la propiedad del ShowHeader control.

También puede personalizar la apariencia del CommandField objeto (color de fuente, color de fondo, etc.) estableciendo las propiedades de estilo para las distintas partes del campo. En la tabla siguiente se enumeran las distintas propiedades de estilo.

Style (propiedad) Descripción
ControlStyle La configuración de estilo para los controles secundarios del servidor web del CommandField objeto.
FooterStyle La configuración de estilo de la sección pie de página del CommandField objeto.
HeaderStyle La configuración de estilo de la sección de encabezado del CommandField objeto.
ItemStyle La configuración de estilo de los elementos de datos del CommandField objeto .

Constructores

Nombre Description
CommandField()

Inicializa una nueva instancia de la clase CommandField.

Propiedades

Nombre Description
AccessibleHeaderText

Obtiene o establece texto que se representa como valor de AbbreviatedText propiedad en algunos controles.

(Heredado de DataControlField)
ButtonType

Obtiene o establece el tipo de botón que se va a mostrar en el campo de botón.

(Heredado de ButtonFieldBase)
CancelImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para el botón Cancelar en un CommandField campo.

CancelText

Obtiene o establece el título del botón Cancelar mostrado en un CommandField campo.

CausesValidation

Obtiene o establece un valor que indica si la validación se realiza cuando el usuario hace clic en un botón en un CommandField campo.

Control

Obtiene una referencia al control de datos al que está asociado el DataControlField objeto .

(Heredado de DataControlField)
ControlStyle

Obtiene el estilo de cualquier control de servidor web contenido por el DataControlField objeto .

(Heredado de DataControlField)
DeleteImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para un botón Eliminar en un CommandField campo.

DeleteText

Obtiene o establece el título de un botón Eliminar en un CommandField campo.

DesignMode

Obtiene un valor que indica si un campo de control de datos se ve actualmente en un entorno en tiempo de diseño.

(Heredado de DataControlField)
EditImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para un botón Editar de un CommandField campo.

EditText

Obtiene o establece el título de un botón Editar de un CommandField campo.

FooterStyle

Obtiene o establece el estilo del pie de página del campo de control de datos.

(Heredado de DataControlField)
FooterText

Obtiene o establece el texto que se muestra en el elemento pie de página de un campo de control de datos.

(Heredado de DataControlField)
HeaderImageUrl

Obtiene o establece la dirección URL de una imagen que se muestra en el elemento de encabezado de un campo de control de datos.

(Heredado de DataControlField)
HeaderStyle

Obtiene o establece el estilo del encabezado del campo de control de datos.

(Heredado de DataControlField)
HeaderText

Obtiene o establece el texto que se muestra en el elemento de encabezado de un campo de control de datos.

(Heredado de DataControlField)
InsertImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para el botón Insertar en un CommandField campo.

InsertText

Obtiene o establece el título del botón Insertar en un CommandField campo.

InsertVisible

Obtiene un valor que indica si el DataControlField objeto está visible cuando su control enlazado a datos primario está en modo de inserción.

(Heredado de DataControlField)
IsTrackingViewState

Obtiene un valor que indica si el DataControlField objeto guarda los cambios en su estado de vista.

(Heredado de DataControlField)
ItemStyle

Obtiene el estilo de cualquier contenido basado en texto mostrado por un campo de control de datos.

(Heredado de DataControlField)
NewImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para el botón Nuevo en un CommandField campo.

NewText

Obtiene o establece el título del botón Nuevo de un CommandField campo.

SelectImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para un botón Seleccionar de un CommandField campo.

SelectText

Obtiene o establece el título de un botón Seleccionar en un CommandField campo.

ShowCancelButton

Obtiene o establece un valor que indica si se muestra un botón Cancelar en un CommandField campo.

ShowDeleteButton

Obtiene o establece un valor que indica si se muestra un botón Eliminar en un CommandField campo.

ShowEditButton

Obtiene o establece un valor que indica si se muestra un botón Editar en un CommandField campo.

ShowHeader

Obtiene o establece un valor que indica si la sección de encabezado se muestra en un ButtonFieldBase objeto .

(Heredado de ButtonFieldBase)
ShowInsertButton

Obtiene o establece un valor que indica si se muestra un botón Nuevo en un CommandField campo.

ShowSelectButton

Obtiene o establece un valor que indica si se muestra un botón Seleccionar en un CommandField campo.

SortExpression

Obtiene o establece una expresión de ordenación que usa un control de origen de datos para ordenar los datos.

(Heredado de DataControlField)
UpdateImageUrl

Obtiene o establece la dirección URL en una imagen que se va a mostrar para un botón Actualizar en un CommandField campo.

UpdateText

Obtiene o establece el título de un botón Actualizar en un CommandField campo.

ValidateRequestMode

Obtiene o establece un valor que especifica si el control valida la entrada del cliente.

(Heredado de DataControlField)
ValidationGroup

Obtiene o establece el nombre del grupo de controles de validación que se va a validar cuando se hace clic en un botón de un ButtonFieldBase objeto.

(Heredado de ButtonFieldBase)
ViewState

Obtiene un diccionario de información de estado que permite guardar y restaurar el estado de vista de un DataControlField objeto en varias solicitudes para la misma página.

(Heredado de DataControlField)
Visible

Obtiene o establece un valor que indica si se representa un campo de control de datos.

(Heredado de DataControlField)

Métodos

Nombre Description
CloneField()

Crea una copia duplicada del objeto derivado actual DataControlField.

(Heredado de DataControlField)
CopyProperties(DataControlField)

Copia las propiedades del objeto actual CommandField en el objeto especificado DataControlField .

CreateField()

Crea un objeto CommandField vacío.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

Extrae el valor del campo de control de datos de la celda de tabla actual y agrega el valor a la colección especificada IDictionary .

(Heredado de DataControlField)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type objeto de la instancia actual.

(Heredado de Object)
Initialize(Boolean, Control)

Realiza la inicialización de instancia básica para un campo de control de datos.

(Heredado de DataControlField)
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Inicializa el objeto especificado DataControlFieldCell en el estado de fila especificado.

LoadViewState(Object)

Restaura el estado de vista guardado previamente de la vista del origen de datos.

(Heredado de DataControlField)
MemberwiseClone()

Crea una copia superficial del objeto actual Object.

(Heredado de Object)
OnFieldChanged()

Genera el evento FieldChanged.

(Heredado de DataControlField)
SaveViewState()

Guarda los cambios realizados en el DataControlField estado de vista desde el momento en que la página se devolvió al servidor.

(Heredado de DataControlField)
ToString()

Devuelve una cadena que representa este DataControlField objeto.

(Heredado de DataControlField)
TrackViewState()

Hace que el DataControlField objeto realice un seguimiento de los cambios en su estado de vista para que se puedan almacenar en la propiedad del ViewState control y conservarse en las solicitudes de la misma página.

(Heredado de DataControlField)
ValidateSupportsCallback()

Determina si los controles contenidos en un CommandField objeto admiten devoluciones de llamada.

Implementaciones de interfaz explícitas

Nombre Description
IDataSourceViewSchemaAccessor.DataSourceViewSchema

Obtiene o establece el esquema asociado a este DataControlField objeto.

(Heredado de DataControlField)
IStateManager.IsTrackingViewState

Obtiene un valor que indica si el DataControlField objeto guarda los cambios en su estado de vista.

(Heredado de DataControlField)
IStateManager.LoadViewState(Object)

Restaura el estado de vista guardado previamente del campo de control de datos.

(Heredado de DataControlField)
IStateManager.SaveViewState()

Guarda los cambios realizados en el DataControlField estado de vista desde el momento en que la página se devolvió al servidor.

(Heredado de DataControlField)
IStateManager.TrackViewState()

Hace que el DataControlField objeto realice un seguimiento de los cambios en su estado de vista para que se puedan almacenar en la propiedad del ViewState control y conservarse en las solicitudes de la misma página.

(Heredado de DataControlField)

Se aplica a

Consulte también