Partilhar via


CommandField Classe

Definição

Representa um campo que exibe botões de comando para executar operações de seleção, edição, inserção ou exclusão em um controle de associação de dados.

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
Herança

Exemplos

O exemplo de código a seguir demonstra como usar um CommandField campo para exibir controles para editar um registro em um GridView controle.


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

O exemplo de código a seguir demonstra como usar o CancelText, EditTexte UpdateText as propriedades para personalizar o texto para os controles de edição.


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

Comentários

A CommandField classe é um campo especial usado por controles associados a dados (como GridView e DetailsView) para exibir botões de comando que executam operações de exclusão, edição, inserção ou seleção. Os botões de comando para executar essas operações podem ser mostrados ou ocultos usando as propriedades mostradas na tabela a seguir.

Propriedade Descrição
ShowDeleteButton Mostra ou oculta um botão Excluir em um CommandField campo para cada registro no controle associado a dados. O botão Excluir permite que o usuário exclua um registro da fonte de dados.
ShowEditButton Mostra ou oculta um botão Editar em um CommandField campo para cada registro no controle associado a dados. O botão Editar permite que o usuário edite um registro da fonte de dados. Quando o usuário clica no botão Editar para um registro específico, esse botão Editar é substituído por um botão Atualizar e um botão Cancelar. Todos os outros botões de comando também estão ocultos.
ShowInsertButton Mostra ou oculta o botão Novo em um CommandField campo. O botão Novo permite que o usuário insira um novo registro na fonte de dados. Quando o usuário clica no botão Novo, ele é substituído por um botão Inserir e um botão Cancelar. Todos os outros botões de comando também estão ocultos. Nota: Essa propriedade se aplica somente a controles associados a dados que dão suporte à inserção de operações, como o DetailsView controle.
ShowSelectButton Mostra ou oculta um botão Selecionar em um CommandField campo para cada registro no controle associado a dados. O botão Selecionar permite que o usuário selecione um registro no controle associado a dados.

Além disso, o botão Cancelar exibido quando um registro está no modo de edição ou inserção pode ser mostrado ou oculto definindo a ShowCancelButton propriedade.

Observação

Quando um controle associado a dados é usado em combinação com um controle de fonte de dados (como um SqlDataSource controle), o controle associado a dados pode aproveitar os recursos do controle da fonte de dados e fornecer a funcionalidade automática de exclusão, atualização e inserção. Para outras fontes de dados, você precisa fornecer as rotinas para executar essas operações durante os eventos apropriados para o controle associado a dados.

O CommandField campo é exibido de forma diferente dependendo do controle associado a dados no qual ele é usado. Por exemplo, o GridView controle exibe um CommandField campo como uma coluna, enquanto o controle o DetailsView exibe como uma linha.

Para especificar o tipo de botão a ser exibido, use a ButtonType propriedade. Quando a ButtonType propriedade é definida ButtonType.Button como ou ButtonType.Link, você pode especificar o texto a ser exibido para os botões definindo as propriedades mostradas na tabela a seguir.

Propriedade Descrição
CancelText A legenda do botão Cancelar.
DeleteText A legenda do botão Excluir.
EditText A legenda do botão Editar.
InsertText A legenda do botão Inserir. Nota: Essa propriedade se aplica somente a controles associados a dados que dão suporte a operações de inserção, como o DetailsView controle.
NewText A legenda do botão Novo. Nota: Essa propriedade se aplica somente a controles associados a dados que dão suporte a operações de inserção, como o DetailsView controle.
SelectText A legenda do botão Selecionar.
UpdateText A legenda do botão Atualizar.

Em vez de exibir um botão de comando ou um botão de link, você pode exibir um botão de imagem definindo a ButtonType propriedade ButtonType.Image e definindo as propriedades mostradas na tabela a seguir.

Propriedade Descrição
CancelImageUrl A imagem a ser exibida para o botão Cancelar
DeleteImageUrl A imagem a ser exibida para o botão Excluir.
EditImageUrl A imagem a ser exibida para o botão Editar.
InsertText A imagem a ser exibida para o botão Inserir. Nota: Essa propriedade se aplica somente a controles associados a dados que dão suporte a operações de inserção, como o DetailsView controle.
NewImageUrl A imagem a ser exibida para o botão Novo. Nota: Essa propriedade se aplica somente a controles associados a dados que dão suporte a operações de inserção, como o DetailsView controle.
SelectImageUrl A imagem a ser exibida para o botão Selecionar.
UpdateImageUrl A imagem a ser exibida para o botão Atualizar.

Por padrão, quando o usuário clica em um botão em um CommandField campo, a validação é executada em todos os controles de validação na página. Para evitar que a validação ocorra quando um botão é clicado, defina a CausesValidation propriedade como false.

Você pode ocultar um CommandField campo em um controle associado a dados definindo a Visible propriedade como false.

O CommandField campo permite que você personalize suas seções de cabeçalho e rodapé. Para exibir uma legenda na seção cabeçalho ou rodapé, defina a propriedade ou a HeaderText FooterText propriedade, respectivamente. Em vez de exibir texto na seção de cabeçalho, você pode exibir uma imagem definindo a HeaderImageUrl propriedade. Para ocultar a seção de cabeçalho em um CommandField objeto, defina a ShowHeader propriedade como false.

Observação

Alguns controles associados a dados (como o GridView controle) podem mostrar ou ocultar apenas toda a seção de cabeçalho do controle. Esses controles associados a dados não dão suporte à ShowHeader propriedade para um campo de botão individual. Para mostrar ou ocultar toda a seção de cabeçalho de um controle associado a dados (se disponível), use a propriedade do ShowHeader controle.

Você também pode personalizar a aparência do objeto (cor da CommandField fonte, cor da tela de fundo e assim por diante) definindo as propriedades de estilo para as diferentes partes do campo. A tabela a seguir lista as diferentes propriedades de estilo.

Propriedade Style Descrição
ControlStyle As configurações de estilo para os controles filho do servidor Web do CommandField objeto.
FooterStyle As configurações de estilo para a seção de rodapé do CommandField objeto.
HeaderStyle As configurações de estilo para a seção de cabeçalho do CommandField objeto.
ItemStyle As configurações de estilo para os itens de dados no CommandField objeto.

Construtores

CommandField()

Inicializa uma nova instância da classe CommandField.

Propriedades

AccessibleHeaderText

Obtém ou define o texto que é renderizado como o valor da propriedade AbbreviatedText em alguns controles.

(Herdado de DataControlField)
ButtonType

Obtém ou define o tipo de botão a exibir no campo de botão.

(Herdado de ButtonFieldBase)
CancelImageUrl

Obtém ou define a URL para uma imagem a ser exibida para o botão Cancelar em um campo CommandField.

CancelText

Obtém ou define a legenda para o botão Cancelar exibido em um campo CommandField.

CausesValidation

Obtém ou define um valor que indica se a validação é realizada quando o usuário clica em um botão em um campo CommandField.

Control

Obtém uma referência ao controle de dados ao qual o objeto DataControlField está associado.

(Herdado de DataControlField)
ControlStyle

Obtém o estilo de qualquer controle do servidor Web contido pelo objeto DataControlField.

(Herdado de DataControlField)
DeleteImageUrl

Obtém ou define a URL para uma imagem a ser exibida para um botão Excluir em um campo CommandField.

DeleteText

Obtém ou define a legenda para um botão Excluir em um campo CommandField.

DesignMode

Obtém um valor que indica se um campo de controle de dados é atualmente exibido em um ambiente de tempo de design.

(Herdado de DataControlField)
EditImageUrl

Obtém ou define a URL para uma imagem a ser exibida para um botão Editar em um campo CommandField.

EditText

Obtém ou define a legenda para um botão de edição em um campo CommandField.

FooterStyle

Obtém ou define o estilo do rodapé do campo de controle de dados.

(Herdado de DataControlField)
FooterText

Obtém ou define o texto exibido no item de rodapé de um campo de controle de dados.

(Herdado de DataControlField)
HeaderImageUrl

Obtém ou define a URL de uma imagem exibida no item de cabeçalho de um campo de controle de dados.

(Herdado de DataControlField)
HeaderStyle

Obtém ou define o estilo do cabeçalho do campo de controle de dados.

(Herdado de DataControlField)
HeaderText

Obtém ou define o texto exibido no item de cabeçalho de um campo de controle de dados.

(Herdado de DataControlField)
InsertImageUrl

Obtém ou define a URL para uma imagem a ser exibida para o botão Inserir em um campo CommandField.

InsertText

Obtém ou define a legenda para o botão Inserir em um campo CommandField.

InsertVisible

Obtém um valor que indica se o objeto DataControlField fica visível quando o controle associado a dados pai está no modo de inserção.

(Herdado de DataControlField)
IsTrackingViewState

Obtém um valor que indica se o objeto DataControlField está salvando alterações no estado de exibição.

(Herdado de DataControlField)
ItemStyle

Obtém o estilo de qualquer conteúdo baseado em texto exibido por um campo de controle de dados.

(Herdado de DataControlField)
NewImageUrl

Obtém ou define a URL para uma imagem a ser exibida para o botão Novo em um campo CommandField.

NewText

Obtém ou define a legenda para o botão Novo em um campo CommandField.

SelectImageUrl

Obtém ou define a URL para uma imagem a exibir para um botão Selecionar em um campo CommandField.

SelectText

Obtém ou define a legenda para um botão de seleção em um campo CommandField.

ShowCancelButton

Obtém ou define um valor que indica se um botão Cancelar é exibido em um campo CommandField.

ShowDeleteButton

Obtém ou define um valor que indica se um botão Excluir é exibido em um campo CommandField.

ShowEditButton

Obtém ou define um valor que indica se um botão Editar é exibido em um campo CommandField.

ShowHeader

Obtém ou define um valor que indica se a seção de cabeçalho é exibida em um objeto de ButtonFieldBase.

(Herdado de ButtonFieldBase)
ShowInsertButton

Obtém ou define um valor que indica se um botão Novo é exibido em um campo CommandField.

ShowSelectButton

Obtém ou define um valor que indica se um botão Selecionar é exibido em um campo CommandField.

SortExpression

Obtém ou define uma expressão de classificação que é usada por um controle de fonte de dados para classificar os dados.

(Herdado de DataControlField)
UpdateImageUrl

Obtém ou define a URL para uma imagem a ser exibida para um botão Atualizar em um campo CommandField.

UpdateText

Obtém ou define a legenda para um botão Atualizar em um campo CommandField.

ValidateRequestMode

Obtém ou define um valor que especifica se o controle valida a entrada do cliente.

(Herdado de DataControlField)
ValidationGroup

Obtém ou define o nome do grupo de controles de validação a ser validado quando se clica em um botão em um objeto ButtonFieldBase.

(Herdado de ButtonFieldBase)
ViewState

Obtém um dicionário de informações de estado que permite salvar e restaurar o estado de exibição de um objeto DataControlField em várias solicitações da mesma página.

(Herdado de DataControlField)
Visible

Obtém ou define um valor que indica se um campo de controle de dados é renderizado.

(Herdado de DataControlField)

Métodos

CloneField()

Cria uma cópia duplicada do objeto atual derivado de DataControlField.

(Herdado de DataControlField)
CopyProperties(DataControlField)

Copia as propriedades do objeto CommandField atual para o objeto DataControlField especificado.

CreateField()

Cria um objeto CommandField vazio.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

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

Extrai o valor do campo de controle de dados da célula da tabela atual e adiciona o valor à coleção IDictionary especificada.

(Herdado de DataControlField)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Initialize(Boolean, Control)

Executa a inicialização de instância básica para um campo de controle de dados.

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

Inicializa o objeto DataControlFieldCell especificado no estado de linha especificado.

LoadViewState(Object)

Restaura o estado de exibição salvo anteriormente da exibição de fonte de dados.

(Herdado de DataControlField)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnFieldChanged()

Aciona o evento FieldChanged.

(Herdado de DataControlField)
SaveViewState()

Salva as alterações feitas no estado de exibição DataControlField desde a hora em que a página foi postada de volta no servidor.

(Herdado de DataControlField)
ToString()

Retorna uma cadeia de caracteres que representa este objeto DataControlField.

(Herdado de DataControlField)
TrackViewState()

Faz com que o objeto DataControlField controle as alterações em seu estado de exibição, de modo que elas possam ser armazenadas na propriedade ViewState do controle e persistidas entre solicitações para a mesma página.

(Herdado de DataControlField)
ValidateSupportsCallback()

Determina se os controles contidos em um objeto CommandField dão suporte a retornos de chamada.

Implantações explícitas de interface

IDataSourceViewSchemaAccessor.DataSourceViewSchema

Obtém ou define o esquema associado a este objeto DataControlField.

(Herdado de DataControlField)
IStateManager.IsTrackingViewState

Obtém um valor que indica se o objeto DataControlField está salvando alterações no estado de exibição.

(Herdado de DataControlField)
IStateManager.LoadViewState(Object)

Restaura o estado de exibição salvo anteriormente do campo de controle de dados.

(Herdado de DataControlField)
IStateManager.SaveViewState()

Salva as alterações feitas no estado de exibição DataControlField desde a hora em que a página foi postada de volta no servidor.

(Herdado de DataControlField)
IStateManager.TrackViewState()

Faz com que o objeto DataControlField controle as alterações em seu estado de exibição, de modo que elas possam ser armazenadas na propriedade ViewState do controle e persistidas entre solicitações para a mesma página.

(Herdado de DataControlField)

Aplica-se a

Confira também