ButtonField Clase

Definición

Representa un campo que se muestra como un botón en un control enlazado a datos.

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
Herencia

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un ButtonField objeto para mostrar una columna de botones de comando 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">
<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>

Comentarios

Los controles enlazados a datos (como GridView y DetailsView) usan la ButtonField clase para mostrar un botón para cada registro que se muestra. El ButtonField objeto 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 ButtonField objeto como una columna, mientras que el DetailsView control lo muestra como una fila.

Al hacer clic en un botón de un campo de botón, se genera el evento de comando del control enlazado a datos primario. Puede proporcionar una rutina personalizada para realizar cuando se hace clic en un botón de comando proporcionando un controlador de eventos para el evento de comando.

Nota

El GridView control genera el RowCommand evento, mientras que el DetailsView control genera el ItemCommand evento.

Para determinar el índice del registro que genera el evento de comando, use la CommandArgument propiedad del argumento de evento que se pasa al evento de comando para el control enlazado a datos. La ButtonField clase rellena automáticamente la CommandArgument propiedad con el valor de índice adecuado.

Para especificar el tipo de botón que se va a mostrar, use la ButtonType propiedad . Al mostrar un vínculo o un botón de comando, use la Text propiedad para especificar el subtítulo que se va a mostrar en los botones.

Nota

Si establece la Text propiedad , todos los botones de un ButtonField recurso compartido comparten el mismo subtítulo.

Como alternativa, puede enlazar el ButtonField objeto a un campo de un origen de datos. Esto le permite mostrar diferentes títulos para los botones del ButtonField objeto . Los valores que se encuentran en el campo especificado se usan para los títulos de texto de los botones. Establezca la DataTextField propiedad para enlazar un ButtonField objeto a un campo de un origen de datos.

Al mostrar un botón de imagen, use la ImageUrl propiedad para especificar la imagen que se va a mostrar para los botones del ButtonField objeto .

Nota

Todos los botones de un ButtonField objeto comparten la misma imagen.

Puede ocultar un ButtonField objeto en un control enlazado a datos estableciendo la Visible propiedad falseen .

El ButtonField objeto permite personalizar sus secciones de encabezado y pie de página. Para mostrar un subtítulo en la sección de encabezado o pie de página, establezca las HeaderText propiedades oFooterText, 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 ButtonField 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 ShowHeader propiedad para el control.

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

Style (propiedad) La configuración de estilo para
ControlStyle Los controles secundarios del servidor web de ButtonField.
FooterStyle Sección de pie de página de .ButtonField
HeaderStyle Sección de encabezado de ButtonField.
ItemStyle Elementos de datos de ButtonField.

Constructores

ButtonField()

Inicializa una nueva instancia de la clase ButtonField.

Propiedades

AccessibleHeaderText

Obtiene o establece el texto que se representa como el valor de la propiedad AbbreviatedText 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)
CausesValidation

Obtiene o establece un valor que indica si se realiza la validación cuando se hace clic en un botón de un objeto ButtonFieldBase.

(Heredado de ButtonFieldBase)
CommandName

Obtiene o establece una cadena que representa la acción que se ejecuta al hacer clic en un botón del objeto ButtonField.

Control

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

(Heredado de DataControlField)
ControlStyle

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

(Heredado de DataControlField)
DataTextField

Obtiene o establece el nombre del campo de datos cuyo valor está enlazado a la propiedad Text del control Button que representa el objeto ButtonField.

DataTextFormatString

Obtiene o establece la cadena que especifica el formato de presentación del valor del campo.

DesignMode

Obtiene un valor que indica si un campo de control de datos está visible actualmente en un entorno en tiempo de diseño.

(Heredado de DataControlField)
FooterStyle

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

(Heredado de DataControlField)
FooterText

Obtiene o establece el texto que se muestra en el elemento de 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 del 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)
ImageUrl

Obtiene o establece la imagen que se muestra para cada botón del objeto ButtonField.

InsertVisible

Obtiene un valor que indica si el objeto DataControlField 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 objeto DataControlField está guardando 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)
ShowHeader

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

(Heredado de ButtonFieldBase)
SortExpression

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

(Heredado de DataControlField)
Text

Obtiene o establece el título estático que se muestra para cada botón en el objeto ButtonField.

ValidateRequestMode

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

(Heredado de DataControlField)
ValidationGroup

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

(Heredado de ButtonFieldBase)
ViewState

Obtiene un diccionario con información de estado que permite guardar y restaurar el estado de vista de un objeto DataControlField en las distintas solicitudes de 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

CloneField()

Crea una copia duplicada del objeto actual derivado de DataControlField.

(Heredado de DataControlField)
CopyProperties(DataControlField)

Copia las propiedades del objeto ButtonField actual al objeto DataControlField especificado.

CreateField()

Crea y devuelve una nueva instancia de la clase ButtonField.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

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

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

(Heredado de DataControlField)
FormatDataTextValue(Object)

Da formato al valor de campo especificado para una celda del objeto ButtonField.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
Initialize(Boolean, Control)

Inicializa el objeto ButtonField actual.

InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

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

LoadViewState(Object)

Restaura la vista del origen de datos tal y como se guardó previamente.

(Heredado de DataControlField)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnFieldChanged()

Genera el evento FieldChanged.

(Heredado de DataControlField)
SaveViewState()

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

(Heredado de DataControlField)
ToString()

Devuelve una cadena que representa este objeto DataControlField.

(Heredado de DataControlField)
TrackViewState()

Hace que el objeto DataControlField lleve un seguimiento de los cambios de su estado de vista, de modo que puedan almacenarse en la propiedad ViewState del control y mantenerse en todas las solicitudes de la misma página.

(Heredado de DataControlField)
ValidateSupportsCallback()

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

Implementaciones de interfaz explícitas

IDataSourceViewSchemaAccessor.DataSourceViewSchema

Obtiene o establece el esquema asociado a este objeto DataControlField.

(Heredado de DataControlField)
IStateManager.IsTrackingViewState

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

(Heredado de DataControlField)
IStateManager.LoadViewState(Object)

Restaura el estado de vista que se guardó previamente del campo de control de datos.

(Heredado de DataControlField)
IStateManager.SaveViewState()

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

(Heredado de DataControlField)
IStateManager.TrackViewState()

Hace que el objeto DataControlField lleve un seguimiento de los cambios de su estado de vista, de modo que puedan almacenarse en la propiedad ViewState del control y mantenerse en todas las solicitudes de la misma página.

(Heredado de DataControlField)

Se aplica a

Consulte también