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 de associação de 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 aciona 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 event que é passada 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 false
como .
O ButtonField objeto permite que você personalize suas seções de cabeçalho e rodapé. Para exibir um legenda na seção de cabeçalho ou rodapé, defina as HeaderText propriedades ou FooterText , 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 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 diferentes propriedades de estilo.
Propriedade Style | As configurações de estilo para |
---|---|
ControlStyle | Os controles do servidor Web filho do ButtonField. |
FooterStyle | A seção de rodapé do ButtonField. |
HeaderStyle | A seção de cabeçalho do ButtonField. |
ItemStyle | Os itens de dados no ButtonField. |
Construtores
ButtonField() |
Inicializa uma nova instância da classe ButtonField. |
Propriedades
AccessibleHeaderText |
Obtém ou define o texto que é renderizado como o valor da propriedade |
ButtonType |
Obtém ou define o tipo de botão a exibir no campo de botão. (Herdado de ButtonFieldBase) |
CausesValidation |
Obtém ou define um valor que indica se a validação é realizada quando um botão em um objeto de ButtonFieldBase é 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 objeto ButtonField for clicado. |
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) |
DataTextField |
Obtém ou define o nome do campo de dados do qual o valor é associado à propriedade Text do controle Button renderizado pelo objeto ButtonField. |
DataTextFormatString |
Obtém ou define a cadeia de caracteres que especifica o formato de exibição do valor do campo. |
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) |
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 objeto ButtonField. |
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) |
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) |
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) |
Text |
Obtém ou define a legenda estática exibida para cada botão no objeto ButtonField. |
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 ButtonField atual para o objeto DataControlField especificado. |
CreateField() |
Cria e retorna uma nova instância da classe ButtonField. |
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) |
FormatDataTextValue(Object) |
Formata o valor do campo especificado para uma célula no objeto de ButtonField. |
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 ButtonField atual. |
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 |
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 de ButtonField 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) |