ButtonField Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um campo exibido como um botão em um controle associado a dados.
public ref class ButtonField : System::Web::UI::WebControls::ButtonFieldBase
public class ButtonField : System.Web.UI.WebControls.ButtonFieldBase
type ButtonField = class
inherit ButtonFieldBase
Public Class ButtonField
Inherits ButtonFieldBase
- Herança
Exemplos
O exemplo de código a seguir demonstra como usar um ButtonField objeto para exibir uma coluna de botões de comando 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">
<script runat="server">
void CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
// If multiple ButtonField column fields are used, use the
// CommandName property to determine which button was clicked.
if(e.CommandName=="Select")
{
// Convert the row index stored in the CommandArgument
// property to an Integer.
int index = Convert.ToInt32(e.CommandArgument);
// Get the last name of the selected author from the appropriate
// cell in the GridView control.
GridViewRow selectedRow = CustomersGridView.Rows[index];
TableCell contactName = selectedRow.Cells[1];
string contact = contactName.Text;
// Display the selected author.
Message.Text = "You selected " + contact + ".";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
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">
<script runat="server">
Sub CustomersGridView_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
' If multiple ButtonField column fields are used, use the
' CommandName property to determine which button was clicked.
If e.CommandName = "Select" Then
' Convert the row index stored in the CommandArgument
' property to an Integer.
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
' Get the last name of the selected author from the appropriate
' cell in the GridView control.
Dim selectedRow As GridViewRow = CustomersGridView.Rows(index)
Dim contactCell As TableCell = selectedRow.Cells(1)
Dim contact As String = contactCell.Text
' Display the selected author.
Message.Text = "You selected " & contact & "."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Comentários
A ButtonField classe é usada por controles associados a dados (como GridView e DetailsView) para exibir um botão para cada registro exibido. O ButtonField objeto é exibido de forma diferente dependendo do controle associado a dados no qual ele é usado. Por exemplo, o GridView controle exibe um ButtonField objeto como uma coluna, enquanto o controle o DetailsView exibe como uma linha.
Clicar em um botão em um campo de botão gera o evento de comando do controle associado a dados pai. Você pode fornecer uma rotina personalizada a ser executada quando um botão de comando é clicado fornecendo um manipulador de eventos para o evento de comando.
Observação
O GridView controle aciona o RowCommand evento, enquanto o DetailsView controle aciona o ItemCommand evento.
Para determinar o índice do registro que gera o evento de comando, use a CommandArgument propriedade do argumento de evento que é passado para o evento de comando para o controle associado a dados. A ButtonField classe preenche automaticamente a CommandArgument propriedade com o valor de índice apropriado.
Para especificar o tipo de botão a ser exibido, use a ButtonType propriedade. Ao exibir um link ou botão de comando, use a Text propriedade para especificar a legenda a ser exibida nos botões.
Observação
Se você definir a Text propriedade, todos os botões em um ButtonField compartilhamento da mesma legenda.
Como alternativa, você pode associar o ButtonField objeto a um campo em uma fonte de dados. Isso permite que você exiba legendas diferentes para os botões no ButtonField objeto. Os valores que estão no campo especificado são usados para as legendas de texto dos botões. Defina a DataTextField propriedade para associar um ButtonField objeto a um campo em uma fonte de dados.
Ao exibir um botão de imagem, use a ImageUrl propriedade para especificar a imagem a ser exibida para os botões no ButtonField objeto.
Observação
Todos os botões em um ButtonField objeto compartilham a mesma imagem.
Você pode ocultar um ButtonField objeto em um controle associado a dados definindo a Visible propriedade como false.
O ButtonField objeto permite personalizar suas seções de cabeçalho e rodapé. Para exibir uma legenda na seção cabeçalho ou rodapé, defina as propriedades ou FooterText o HeaderText cabeçalho, respectivamente. Em vez de exibir o 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 ButtonField 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 ShowHeader propriedade para o controle.
Você também pode personalizar a aparência do objeto (cor da ButtonField 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 propriedades de estilo diferentes.
| Propriedade Style | As configurações de estilo para |
|---|---|
| ControlStyle | Os controles do servidor Web filho do ButtonField. |
| FooterStyle | A seção rodapé do ButtonField. |
| HeaderStyle | A seção de cabeçalho do ButtonField. |
| ItemStyle | Os itens de dados no ButtonField. |
Construtores
| Nome | Description |
|---|---|
| ButtonField() |
Inicializa uma nova instância da classe ButtonField. |
Propriedades
| Nome | Description |
|---|---|
| AccessibleHeaderText |
Obtém ou define o texto renderizado como o valor da |
| ButtonType |
Obtém ou define o tipo de botão a ser exibido no campo de botão. (Herdado de ButtonFieldBase) |
| CausesValidation |
Obtém ou define um valor que indica se a validação é executada quando um botão em um ButtonFieldBase objeto é clicado. (Herdado de ButtonFieldBase) |
| CommandName |
Obtém ou define uma cadeia de caracteres que representa a ação a ser executada quando um botão em um ButtonField objeto é clicado. |
| Control |
Obtém uma referência ao controle de dados ao qual o DataControlField objeto está associado. (Herdado de DataControlField) |
| ControlStyle |
Obtém o estilo de todos os controles de servidor Web contidos pelo DataControlField objeto. (Herdado de DataControlField) |
| DataTextField |
Obtém ou define o nome do campo de dados para o qual o valor está associado à Text propriedade do Button controle renderizado pelo ButtonField objeto. |
| DataTextFormatString |
Obtém ou define a cadeia de caracteres que especifica o formato de exibição para o valor do campo. |
| DesignMode |
Obtém um valor que indica se um campo de controle de dados é exibido no momento em um ambiente de tempo de design. (Herdado de DataControlField) |
| 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) |
| ImageUrl |
Obtém ou define a imagem a ser exibida para cada botão no ButtonField objeto. |
| InsertVisible |
Obtém um valor que indica se o DataControlField objeto está visível quando seu controle associado a dados pai está no modo de inserção. (Herdado de DataControlField) |
| IsTrackingViewState |
Obtém um valor que indica se o DataControlField objeto está salvando alterações em seu 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) |
| ShowHeader |
Obtém ou define um valor que indica se a seção de cabeçalho é exibida em um ButtonFieldBase objeto. (Herdado de ButtonFieldBase) |
| SortExpression |
Obtém ou define uma expressão de classificação usada por um controle de fonte de dados para classificar dados. (Herdado de DataControlField) |
| Text |
Obtém ou define a legenda estática exibida para cada botão no ButtonField objeto. |
| 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 um botão em um ButtonFieldBase objeto é clicado. (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 DataControlField objeto em várias solicitações para a 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
| Nome | Description |
|---|---|
| CloneField() |
Cria uma cópia duplicada do objeto derivado atual DataControlField. (Herdado de DataControlField) |
| CopyProperties(DataControlField) |
Copia as propriedades do objeto atual ButtonField para o objeto especificado DataControlField . |
| CreateField() |
Cria e retorna uma nova instância da ButtonField classe. |
| 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 especificada IDictionary . (Herdado de DataControlField) |
| FormatDataTextValue(Object) |
Formata o valor de campo especificado para uma célula no ButtonField objeto. |
| 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) |
Inicializa o objeto atual ButtonField . |
| InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) |
Inicializa o objeto especificado DataControlFieldCell para o estado da linha especificado. |
| LoadViewState(Object) |
Restaura o estado de exibição salvo anteriormente da exibição da fonte de dados. (Herdado de DataControlField) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| OnFieldChanged() |
Aciona o evento |
| SaveViewState() |
Salva as alterações feitas no estado de exibição DataControlField desde o momento em que a página foi postada de volta no servidor. (Herdado de DataControlField) |
| ToString() |
Retorna uma cadeia de caracteres que representa esse DataControlField objeto. (Herdado de DataControlField) |
| TrackViewState() |
Faz com que o DataControlField objeto acompanhe as alterações em seu estado de exibição para que elas possam ser armazenadas na propriedade do ViewState controle e mantidas entre solicitações para a mesma página. (Herdado de DataControlField) |
| ValidateSupportsCallback() |
Determina se os controles contidos em um ButtonField objeto dão suporte a retornos de chamada. |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Obtém ou define o esquema associado a esse DataControlField objeto. (Herdado de DataControlField) |
| IStateManager.IsTrackingViewState |
Obtém um valor que indica se o DataControlField objeto está salvando alterações em seu 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 o momento em que a página foi postada de volta no servidor. (Herdado de DataControlField) |
| IStateManager.TrackViewState() |
Faz com que o DataControlField objeto acompanhe as alterações em seu estado de exibição para que elas possam ser armazenadas na propriedade do ViewState controle e mantidas entre solicitações para a mesma página. (Herdado de DataControlField) |