CommandField Classe

Definição

Representa um campo especial que mostra botões de comando para realizar operações de seleção, edição, inserção ou eliminação num controlo vinculado a 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 seguinte demonstra como usar um CommandField campo para mostrar controlos e editar um registo num GridView controlo.


<%@ 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 seguinte demonstra como usar as CancelTextpropriedades , EditText, e UpdateText para personalizar o texto dos controlos 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>

Observações

A CommandField classe é um campo especial usado por controlos ligados a dados (como GridView e DetailsView) para mostrar botões de comando que executam operações de eliminar, editar, inserir ou selecionar. Os botões de comando para realizar estas operações podem ser mostrados ou ocultos usando as propriedades apresentadas na tabela seguinte.

Property Description
ShowDeleteButton Mostra ou esconde um botão Delete num CommandField campo para cada registo no controlo data-bound. O botão Delete permite ao utilizador eliminar um registo da fonte de dados.
ShowEditButton Mostra ou esconde um botão Editar num CommandField campo para cada registo no controlo data-bound. O botão Editar permite ao utilizador editar um registo a partir da fonte de dados. Quando o utilizador clica no botão Editar para um registo 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 esconde o botão Novo num CommandField campo. O botão Novo permite ao utilizador inserir um novo registo na fonte de dados. Quando o utilizador clica no botão Novo, este é 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: Esta propriedade aplica-se apenas a controlos ligados a dados que suportam operações de inserção, como o controlo DetailsView .
ShowSelectButton Mostra ou oculta um botão Select num CommandField campo para cada registo no controlo data-bound. O botão Select permite ao utilizador selecionar um registo no controlo vinculado aos dados.

Além disso, o botão Cancelar exibido quando um registo está em modo de edição ou inserção pode ser mostrado ou ocultado ao definir a ShowCancelButton propriedade.

Note

Quando um controlo de data bound é usado em combinação com um controlo de fonte de dados (como um SqlDataSource controlo), o controlo data-bound pode tirar partido das capacidades do controlo de fonte de dados e fornecer funcionalidades automáticas de eliminação, atualização e inserção. Para outras fontes de dados, é necessário fornecer as rotinas para realizar estas operações durante os eventos apropriados para o controlo ligado a dados.

O CommandField campo é apresentado de forma diferente dependendo do controlo limitado por dados em que é utilizado. Por exemplo, o controlo GridView apresenta um CommandField campo como uma coluna, enquanto o controlo DetailsView o apresenta como uma linha.

Para especificar o tipo de botão a mostrar, use a ButtonType propriedade. Quando a ButtonType propriedade está definida para ButtonType.Button ou ButtonType.Link, pode especificar o texto a mostrar para os botões definindo as propriedades mostradas na tabela seguinte.

Property Description
CancelText A legenda do botão Cancelar.
DeleteText A legenda do botão Eliminar.
EditText A legenda do botão Editar.
InsertText A legenda do botão Inserir. Nota: Esta propriedade aplica-se apenas a controlos vinculados a dados que suportam operações de inserção, como o controlo DetailsView .
NewText A legenda do botão Novo. Nota: Esta propriedade aplica-se apenas a controlos vinculados a dados que suportam operações de inserção, como o controlo DetailsView .
SelectText A legenda do botão Select.
UpdateText A legenda do botão Atualizar.

Em vez de mostrar um botão de comando ou um botão de ligação, pode mostrar um botão de imagem definindo a ButtonType propriedade para ButtonType.Image e depois definindo as propriedades mostradas na tabela seguinte.

Property Description
CancelImageUrl A imagem a mostrar para o botão Cancelar
DeleteImageUrl A imagem a mostrar para o botão Eliminar.
EditImageUrl A imagem a mostrar para o botão de Editar.
InsertText A imagem a mostrar para o botão Inserir. Nota: Esta propriedade aplica-se apenas a controlos vinculados a dados que suportam operações de inserção, como o controlo DetailsView .
NewImageUrl A imagem a mostrar para o botão Novo. Nota: Esta propriedade aplica-se apenas a controlos vinculados a dados que suportam operações de inserção, como o controlo DetailsView .
SelectImageUrl A imagem a mostrar para o botão Select.
UpdateImageUrl A imagem a mostrar para o botão Atualizar.

Por defeito, quando o utilizador clica num botão num CommandField campo, a validação é realizada em todos os controlos de validação na página. Para evitar que a validação ocorra quando um botão é clicado, defina a CausesValidation propriedade para false.

Pode esconder um CommandField campo num controlo data-bound definindo a Visible propriedade para false.

O CommandField campo permite-lhe personalizar as secções de cabeçalho e rodapé. Para mostrar uma legenda no cabeçalho ou na secção do rodapé, defina a HeaderText ou a FooterText propriedade, respetivamente. Em vez de mostrar texto na secção do cabeçalho, pode mostrar uma imagem definindo a HeaderImageUrl propriedade. Para ocultar a secção do cabeçalho num CommandField objeto, defina a ShowHeader propriedade para false.

Note

Alguns controlos ligados a dados (como o controlo GridView ) podem mostrar ou ocultar apenas toda a secção do cabeçalho do controlo. Estes controlos vinculados a dados não suportam a ShowHeader propriedade de um campo de botão individual. Para mostrar ou ocultar toda a secção do cabeçalho de um controlo ligado a dados (se disponível), use a propriedade do ShowHeader controlo.

Também pode personalizar a aparência do CommandField objeto (cor da fonte, cor de fundo, etc.) definindo as propriedades de estilo para as diferentes partes do campo. A tabela seguinte lista as diferentes propriedades de estilo.

Propriedade de estilo Description
ControlStyle As definições de estilo do servidor Web filho controlam o CommandField objeto.
FooterStyle As definições de estilo para a secção do rodapé do CommandField objeto.
HeaderStyle As definições de estilo para a secção do cabeçalho do CommandField objeto.
ItemStyle As definições de estilo para os itens de dados no CommandField objeto.

Construtores

Name Description
CommandField()

Inicializa uma nova instância da CommandField classe.

Propriedades

Name Description
AccessibleHeaderText

Recebe ou define texto que é renderizado como valor de AbbreviatedText propriedade em alguns controlos.

(Herdado de DataControlField)
ButtonType

Obtém ou define o tipo de botão para mostrar no campo de botões.

(Herdado de ButtonFieldBase)
CancelImageUrl

Obtém ou define a URL para uma imagem para mostrar no botão Cancelar num CommandField campo.

CancelText

Recebe ou define a legenda para o botão Cancelar exibido num CommandField campo.

CausesValidation

Recebe ou define um valor que indica se a validação é realizada quando o utilizador clica num botão num CommandField campo.

Control

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

(Herdado de DataControlField)
ControlStyle

Obtém o estilo de quaisquer controlos de servidor Web contidos pelo DataControlField objeto.

(Herdado de DataControlField)
DeleteImageUrl

Obtém ou define a URL de uma imagem para mostrar num botão Delete num CommandField campo.

DeleteText

Recebe ou define a legenda para um botão Apagar num CommandField campo.

DesignMode

Obtém um valor que indica se um campo de controlo de dados está atualmente visualizado num ambiente em tempo de design.

(Herdado de DataControlField)
EditImageUrl

Obtém ou define o URL de uma imagem para mostrar num botão de Editar num CommandField campo.

EditText

Recebe ou define a legenda para um botão de Editar num CommandField campo.

FooterStyle

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

(Herdado de DataControlField)
FooterText

Recebe ou define o texto que é exibido no elemento de rodapé de um campo de controlo de dados.

(Herdado de DataControlField)
HeaderImageUrl

Obtém ou define a URL de uma imagem que é exibida no elemento do cabeçalho de um campo de controlo de dados.

(Herdado de DataControlField)
HeaderStyle

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

(Herdado de DataControlField)
HeaderText

Obtém ou define o texto que é exibido no elemento do cabeçalho de um campo de controlo de dados.

(Herdado de DataControlField)
InsertImageUrl

Recebe ou define a URL de uma imagem para mostrar no botão Inserir num CommandField campo.

InsertText

Obtém ou define a legenda do botão Inserir num CommandField campo.

InsertVisible

Recebe um valor que indica se o DataControlField objeto é visível quando o controlo de dados do pai está em modo de inserção.

(Herdado de DataControlField)
IsTrackingViewState

Recebe um valor que indica se o DataControlField objeto está a guardar alterações ao seu estado de visualização.

(Herdado de DataControlField)
ItemStyle

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

(Herdado de DataControlField)
NewImageUrl

Recebe ou define o URL de uma imagem para mostrar no botão Novo num CommandField campo.

NewText

Obtém ou define a legenda do botão Novo num CommandField campo.

SelectImageUrl

Obtém ou define a URL de uma imagem para mostrar num botão Select num CommandField campo.

SelectText

Recebe ou define a legenda para um botão Select num CommandField campo.

ShowCancelButton

Recebe ou define um valor que indica se um botão Cancelar é exibido num CommandField campo.

ShowDeleteButton

Recebe ou define um valor que indica se um botão Delete é exibido num CommandField campo.

ShowEditButton

Recebe ou define um valor que indica se um botão Editar é exibido num CommandField campo.

ShowHeader

Recebe ou define um valor que indica se a secção do cabeçalho é exibida num ButtonFieldBase objeto.

(Herdado de ButtonFieldBase)
ShowInsertButton

Recebe ou define um valor que indica se um botão Novo é exibido num CommandField campo.

ShowSelectButton

Recebe ou define um valor que indica se um botão Select é exibido num CommandField campo.

SortExpression

Obtém ou define uma expressão de ordenação que é usada por um controlo de fonte de dados para ordenar dados.

(Herdado de DataControlField)
UpdateImageUrl

Obtém ou define o URL de uma imagem para mostrar num botão Atualizar num CommandField campo.

UpdateText

Recebe ou define a legenda para um botão de Atualização num CommandField campo.

ValidateRequestMode

Recebe ou define um valor que especifica se o controlo valida a entrada do cliente.

(Herdado de DataControlField)
ValidationGroup

Obtém ou define o nome do grupo de controlos de validação para validar quando um botão num ButtonFieldBase objeto é clicado.

(Herdado de ButtonFieldBase)
ViewState

Obtém um dicionário de informação de estado que permite guardar e restaurar o estado de visualização de um DataControlField objeto através de múltiplos pedidos para a mesma página.

(Herdado de DataControlField)
Visible

Recebe ou define um valor que indica se um campo de controlo de dados é renderizado.

(Herdado de DataControlField)

Métodos

Name Description
CloneField()

Cria uma cópia duplicada do objeto derivado atualmente DataControlField.

(Herdado de DataControlField)
CopyProperties(DataControlField)

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

CreateField()

Cria um objeto vazio CommandField .

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 controlo de dados da célula atual da tabela e adiciona o valor à coleção especificada IDictionary .

(Herdado de DataControlField)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Initialize(Boolean, Control)

Realiza a inicialização básica da instância para um campo de controlo de dados.

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

Inicializa o objeto especificado DataControlFieldCell para o estado da linha especificado.

LoadViewState(Object)

Restaura o estado da vista de fonte de dados anteriormente guardada.

(Herdado de DataControlField)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
OnFieldChanged()

Eleva o FieldChanged evento.

(Herdado de DataControlField)
SaveViewState()

Guarda as alterações feitas ao DataControlField estado de visualização desde o momento em que a página foi publicada de volta no servidor.

(Herdado de DataControlField)
ToString()

Devolve uma cadeia que representa este DataControlField objeto.

(Herdado de DataControlField)
TrackViewState()

Faz com que o DataControlField objeto acompanhe alterações ao estado da visualização para que possam ser armazenadas na propriedade do ViewState controlo e persistirem entre pedidos para a mesma página.

(Herdado de DataControlField)
ValidateSupportsCallback()

Determina se os controlos contidos num CommandField objeto suportam callbacks.

Implementações de Interface Explícita

Name Description
IDataSourceViewSchemaAccessor.DataSourceViewSchema

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

(Herdado de DataControlField)
IStateManager.IsTrackingViewState

Recebe um valor que indica se o DataControlField objeto está a guardar alterações ao seu estado de visualização.

(Herdado de DataControlField)
IStateManager.LoadViewState(Object)

Restaura o estado de visualização previamente guardado do campo de controlo de dados.

(Herdado de DataControlField)
IStateManager.SaveViewState()

Guarda as alterações feitas ao DataControlField estado de visualização desde o momento em que a página foi publicada de volta no servidor.

(Herdado de DataControlField)
IStateManager.TrackViewState()

Faz com que o DataControlField objeto acompanhe alterações ao estado da visualização para que possam ser armazenadas na propriedade do ViewState controlo e persistirem entre pedidos para a mesma página.

(Herdado de DataControlField)

Aplica-se a

Ver também