ButtonField Classe

Definizione

Rappresenta un campo visualizzato come pulsante in un controllo associato a dati.Represents a field that is displayed as a button in a data-bound control.

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
Ereditarietà

Esempi

Nell'esempio di codice riportato di seguito viene illustrato come utilizzare un oggetto ButtonField per visualizzare una colonna di pulsanti di comando in un controllo GridView.The following code example demonstrates how to use a ButtonField object to display a column of command buttons in a 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>

Commenti

La classe ButtonField viene utilizzata dai controlli con associazione a dati, ad esempio GridView e DetailsView, per visualizzare un pulsante per ogni record visualizzato.The ButtonField class is used by data-bound controls (such as GridView and DetailsView) to display a button for each record that is displayed. L'oggetto ButtonField viene visualizzato in modo diverso a seconda del controllo con associazione a dati in cui viene usato.The ButtonField object is displayed differently depending on the data-bound control in which it is used. Ad esempio, il controllo GridView Visualizza un oggetto ButtonField come colonna, mentre il controllo DetailsView lo Visualizza come riga.For example, the GridView control displays a ButtonField object as a column, while the DetailsView control displays it as a row.

Quando si fa clic su un pulsante in un campo pulsante, viene generato l'evento di comando del controllo con associazione a dati padre.Clicking a button in a button field raises the command event of the parent data-bound control. È possibile fornire una routine personalizzata da eseguire quando si fa clic su un pulsante di comando specificando un gestore eventi per l'evento di comando.You can provide a custom routine to perform when a command button is clicked by providing an event handler for the command event.

Nota

Il controllo GridView genera l'evento RowCommand, mentre il controllo DetailsView genera l'evento ItemCommand.The GridView control raises the RowCommand event, while the DetailsView control raises the ItemCommand event.

Per determinare l'indice del record che genera l'evento di comando, utilizzare la proprietà CommandArgument dell'argomento dell'evento passato all'evento di comando per il controllo con associazione a dati.To determine the index of the record that raises the command event, use the CommandArgument property of the event argument that is passed to the command event for the data-bound control. La classe ButtonField popola automaticamente la proprietà CommandArgument con il valore di indice appropriato.The ButtonField class automatically populates the CommandArgument property with the appropriate index value.

Per specificare il tipo di pulsante da visualizzare, utilizzare la proprietà ButtonType.To specify the type of button to display, use the ButtonType property. Quando si visualizza un collegamento o un pulsante di comando, utilizzare la proprietà Text per specificare la didascalia da visualizzare nei pulsanti.When displaying a link or command button, use the Text property to specify the caption to display in the buttons.

Nota

Se si imposta la proprietà Text, tutti i pulsanti di un ButtonField condividono la stessa didascalia.If you set the Text property, all buttons in a ButtonField share the same caption.

In alternativa, è possibile associare l'oggetto ButtonField a un campo in un'origine dati.Alternatively, you can bind the ButtonField object to a field in a data source. In questo modo è possibile visualizzare didascalie diverse per i pulsanti nell'oggetto ButtonField.This allows you to display different captions for the buttons in the ButtonField object. I valori presenti nel campo specificato vengono utilizzati per le didascalie di testo dei pulsanti.The values that are in the specified field are used for the text captions of the buttons. Impostare la proprietà DataTextField per associare un oggetto ButtonField a un campo in un'origine dati.Set the DataTextField property to bind a ButtonField object to a field in a data source.

Quando si visualizza un pulsante immagine, utilizzare la proprietà ImageUrl per specificare l'immagine da visualizzare per i pulsanti nell'oggetto ButtonField.When displaying an image button, use the ImageUrl property to specify the image to display for the buttons in the ButtonField object.

Nota

Tutti i pulsanti di un oggetto ButtonField condividono la stessa immagine.All buttons in a ButtonField object share the same image.

È possibile nascondere un oggetto ButtonField in un controllo con associazione a dati impostando la proprietà Visible su false.You can hide a ButtonField object in a data-bound control by setting the Visible property to false.

L'oggetto ButtonField consente di personalizzare le sezioni dell'intestazione e del piè di pagina.The ButtonField object allows you to customize its header and footer sections. Per visualizzare una didascalia nella sezione dell'intestazione o del piè di pagina, impostare rispettivamente le proprietà HeaderText o FooterText.To display a caption in the header or footer section, set the HeaderText or FooterText properties, respectively. Anziché visualizzare il testo nella sezione dell'intestazione, è possibile visualizzare un'immagine impostando la proprietà HeaderImageUrl.Instead of displaying text in the header section, you can display an image by setting the HeaderImageUrl property. Per nascondere la sezione dell'intestazione in un oggetto ButtonField, impostare la proprietà ShowHeader su false.To hide the header section in a ButtonField object, set the ShowHeader property to false.

Nota

Alcuni controlli associati a dati, ad esempio il controllo GridView, possono visualizzare o nascondere solo l'intera sezione di intestazione del controllo.Some data-bound controls (such as the GridView control) can show or hide only the entire header section of the control. Questi controlli associati a dati non supportano la proprietà ShowHeader per un singolo campo Button.These data-bound controls do not support the ShowHeader property for an individual button field. Per visualizzare o nascondere l'intera sezione di intestazione di un controllo con associazione a dati (se disponibile), utilizzare la proprietà ShowHeader per il controllo.To show or hide the entire header section of a data-bound control (if available), use the ShowHeader property for the control.

È anche possibile personalizzare l'aspetto dell'oggetto ButtonField (colore del carattere, colore di sfondo e così via) impostando le proprietà di stile per le diverse parti del campo.You also can customize the appearance of the ButtonField object (font color, background color, and so on) by setting the style properties for the different parts of the field. Nella tabella seguente sono elencate le diverse proprietà di stile.The following table lists the different style properties.

Style (proprietà)Style property Impostazioni di stile perThe style settings for
ControlStyle Controlli del server Web figlio della ButtonField.The child Web server controls of the ButtonField.
FooterStyle Sezione del piè di pagina della ButtonField.The footer section of the ButtonField.
HeaderStyle Sezione di intestazione della ButtonField.The header section of the ButtonField.
ItemStyle Elementi di dati nell'ButtonField.The data items in the ButtonField.

Costruttori

ButtonField()

Inizializza una nuova istanza della classe ButtonField.Initializes a new instance of the ButtonField class.

Proprietà

AccessibleHeaderText

Ottiene o imposta il testo che viene sottoposto a rendering come valore della proprietà AbbreviatedText in alcuni controlli.Gets or sets text that is rendered as the AbbreviatedText property value in some controls.

(Ereditato da DataControlField)
ButtonType

Ottiene o imposta il tipo di pulsante da visualizzare nel campo pulsante.Gets or sets the button type to display in the button field.

(Ereditato da ButtonFieldBase)
CausesValidation

Ottiene o imposta un valore che indica se viene eseguita la convalida quando si fa clic su un pulsante in un oggetto ButtonFieldBase.Gets or sets a value indicating whether validation is performed when a button in a ButtonFieldBase object is clicked.

(Ereditato da ButtonFieldBase)
CommandName

Ottiene o imposta una stringa che rappresenta l'azione da eseguire quando si fa clic su un pulsante in un oggetto ButtonField.Gets or sets a string that represents the action to perform when a button in a ButtonField object is clicked.

Control

Ottiene un riferimento al controllo dati a cui l'oggetto DataControlField è associato.Gets a reference to the data control that the DataControlField object is associated with.

(Ereditato da DataControlField)
ControlStyle

Ottiene lo stile di tutti i controlli server Web contenuti nell'oggetto DataControlField.Gets the style of any Web server controls contained by the DataControlField object.

(Ereditato da DataControlField)
DataTextField

Ottiene o imposta il nome del campo di dati per cui il valore è associato alla proprietà Text del controllo Button sottoposto a rendering dall'oggetto ButtonField.Gets or sets the name of the data field for which the value is bound to the Text property of the Button control that is rendered by the ButtonField object.

DataTextFormatString

Ottiene o imposta la stringa in cui è specificato il formato di visualizzazione per il valore del campo.Gets or sets the string that specifies the display format for the value of the field.

DesignMode

Ottiene un valore che indica se un campo di controllo dati è attualmente visualizzato in un ambiente di progettazione.Gets a value indicating whether a data control field is currently viewed in a design-time environment.

(Ereditato da DataControlField)
FooterStyle

Ottiene o imposta lo stile del piè di pagina del campo di controllo dati.Gets or sets the style of the footer of the data control field.

(Ereditato da DataControlField)
FooterText

Ottiene o imposta il testo visualizzato nell'elemento del piè di pagina del campo di controllo dati.Gets or sets the text that is displayed in the footer item of a data control field.

(Ereditato da DataControlField)
HeaderImageUrl

Ottiene o imposta l'URL di un'immagine che viene visualizzata nell'elemento di intestazione di un campo di controlli dati.Gets or sets the URL of an image that is displayed in the header item of a data control field.

(Ereditato da DataControlField)
HeaderStyle

Ottiene o imposta lo stile dell'intestazione del campo di controllo dati.Gets or sets the style of the header of the data control field.

(Ereditato da DataControlField)
HeaderText

Ottiene o imposta il testo visualizzato nell'elemento dell'intestazione di un campo di controllo dati.Gets or sets the text that is displayed in the header item of a data control field.

(Ereditato da DataControlField)
ImageUrl

Ottiene o imposta l'immagine da visualizzare per ciascun pulsante nell'oggetto ButtonField.Gets or sets the image to display for each button in the ButtonField object.

InsertVisible

Ottiene un valore che indica se l'oggetto DataControlField è visibile quando il controllo con associazione a dati padre si trova in modalità di inserimento.Gets a value indicating whether the DataControlField object is visible when its parent data-bound control is in insert mode.

(Ereditato da DataControlField)
IsTrackingViewState

Ottiene un valore che indica se l'oggetto DataControlField sta salvando le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the DataControlField object is saving changes to its view state.

(Ereditato da DataControlField)
ItemStyle

Ottiene lo stile di tutti i contenuti basati sul testo visualizzati da un campo di controllo dati.Gets the style of any text-based content displayed by a data control field.

(Ereditato da DataControlField)
ShowHeader

Ottiene o imposta un valore che indica se la sezione di intestazione viene visualizzata in un oggetto ButtonFieldBase.Gets or sets a value indicating whether the header section is displayed in a ButtonFieldBase object.

(Ereditato da ButtonFieldBase)
SortExpression

Ottiene o imposta l'espressione di ordinamento che viene utilizzata da un controllo origine dati per ordinare i dati.Gets or sets a sort expression that is used by a data source control to sort data.

(Ereditato da DataControlField)
Text

Ottiene o imposta la didascalia statica visualizzata per ciascun pulsante nell'oggetto ButtonField.Gets or sets the static caption that is displayed for each button in the ButtonField object.

ValidateRequestMode

Ottiene o imposta un valore che specifica se il controllo convalida l'input del client.Gets or sets a value that specifies whether the control validates client input.

(Ereditato da DataControlField)
ValidationGroup

Ottiene o imposta il nome del gruppo di controlli di convalida da convalidare quando si fa clic su un pulsante in un oggetto ButtonFieldBase.Gets or sets the name of the group of validation controls to validate when a button in a ButtonFieldBase object is clicked.

(Ereditato da ButtonFieldBase)
ViewState

Ottiene un dizionario di informazioni sullo stato che consente di salvare e ripristinare lo stato di visualizzazione di un oggetto DataControlField tra più richieste per la stessa pagina.Gets a dictionary of state information that allows you to save and restore the view state of a DataControlField object across multiple requests for the same page.

(Ereditato da DataControlField)
Visible

Ottiene o imposta un valore che indica se viene eseguito il rendering di un campo di controllo dati.Gets or sets a value indicating whether a data control field is rendered.

(Ereditato da DataControlField)

Metodi

CloneField()

Crea una copia duplicata dell'oggetto corrente derivato da DataControlField.Creates a duplicate copy of the current DataControlField-derived object.

(Ereditato da DataControlField)
CopyProperties(DataControlField)

Copia le proprietà dell'oggetto ButtonField corrente nell'oggetto DataControlField specificato.Copies the properties of the current ButtonField object to the specified DataControlField object.

CreateField()

Crea e restituisce una nuova istanza della classe ButtonField.Creates and returns a new instance of the ButtonField class.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

Estrae il valore del campo di controllo dati dalla cella corrente della tabella e aggiunge il valore all'insieme IDictionary specificato.Extracts the value of the data control field from the current table cell and adds the value to the specified IDictionary collection.

(Ereditato da DataControlField)
FormatDataTextValue(Object)

Esegue la formattazione del valore di campo specificato per una cella nell'oggetto ButtonField.Formats the specified field value for a cell in the ButtonField object.

GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
Initialize(Boolean, Control)

Inizializza l'oggetto ButtonField corrente.Initializes the current ButtonField object.

InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Inizializza l'oggetto DataControlFieldCell specificato nello stato della riga specificata.Initializes the specified DataControlFieldCell object to the specified row state.

LoadViewState(Object)

Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati.Restores the data source view's previously saved view state.

(Ereditato da DataControlField)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
OnFieldChanged()

Genera l'evento FieldChanged.Raises the FieldChanged event.

(Ereditato da DataControlField)
SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione DataControlField dal momento in cui è stato eseguito il postback della pagina al server.Saves the changes made to the DataControlField view state since the time the page was posted back to the server.

(Ereditato da DataControlField)
ToString()

Restituisce una stringa che rappresenta questo oggetto DataControlField.Returns a string that represents this DataControlField object.

(Ereditato da DataControlField)
TrackViewState()

Mediante questo metodo l'oggetto DataControlField tiene traccia delle modifiche apportate al relativo stato di visualizzazione in modo che possano essere memorizzate nella proprietà ViewState del controllo e mantenute nelle richieste della stessa pagina.Causes the DataControlField object to track changes to its view state so they can be stored in the control's ViewState property and persisted across requests for the same page.

(Ereditato da DataControlField)
ValidateSupportsCallback()

Determina se i controlli contenuti in un oggetto ButtonField supportano i callback.Determines whether the controls that are contained in a ButtonField object support callbacks.

Implementazioni dell'interfaccia esplicita

IDataSourceViewSchemaAccessor.DataSourceViewSchema

Ottiene o imposta lo schema associato all'oggetto DataControlField.Gets or sets the schema associated with this DataControlField object.

(Ereditato da DataControlField)
IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto DataControlField sta salvando le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the DataControlField object is saving changes to its view state.

(Ereditato da DataControlField)
IStateManager.LoadViewState(Object)

Ripristina lo stato di visualizzazione del campo del controllo dati salvato in precedenza.Restores the data control field's previously saved view state.

(Ereditato da DataControlField)
IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione DataControlField dal momento in cui è stato eseguito il postback della pagina al server.Saves the changes made to the DataControlField view state since the time the page was posted back to the server.

(Ereditato da DataControlField)
IStateManager.TrackViewState()

Mediante questo metodo l'oggetto DataControlField tiene traccia delle modifiche apportate al relativo stato di visualizzazione in modo che possano essere memorizzate nella proprietà ViewState del controllo e mantenute nelle richieste della stessa pagina.Causes the DataControlField object to track changes to its view state so they can be stored in the control's ViewState property and persisted across requests for the same page.

(Ereditato da DataControlField)

Si applica a

Vedi anche