ButtonField Classe

Definizione

Rappresenta un campo visualizzato come pulsante in un controllo associato a dati.

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à

Esempio

Nell'esempio di codice seguente viene illustrato come utilizzare un ButtonField oggetto per visualizzare una colonna di pulsanti di comando in un GridView controllo .


<%@ 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 ButtonField classe viene utilizzata dai controlli associati a dati (ad esempio GridView e DetailsView) per visualizzare un pulsante per ogni record visualizzato. L'oggetto ButtonField viene visualizzato in modo diverso a seconda del controllo associato a dati in cui viene utilizzato. Ad esempio, il GridView controllo visualizza un ButtonField oggetto come colonna, mentre il DetailsView controllo lo visualizza come riga.

Facendo clic su un pulsante in un campo pulsante viene generato l'evento di comando del controllo associato a dati padre. È 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.

Nota

Il GridView controllo genera l'evento RowCommand , mentre il DetailsView controllo genera l'evento ItemCommand .

Per determinare l'indice del record che genera l'evento di comando, utilizzare la CommandArgument proprietà dell'argomento evento passato all'evento di comando per il controllo associato a dati. La ButtonField classe popola automaticamente la CommandArgument proprietà con il valore di indice appropriato.

Per specificare il tipo di pulsante da visualizzare, utilizzare la ButtonType proprietà . Quando si visualizza un collegamento o un pulsante di comando, utilizzare la Text proprietà per specificare il didascalia da visualizzare nei pulsanti.

Nota

Se si imposta la Text proprietà, tutti i pulsanti in una ButtonField condivisione condividono lo stesso didascalia.

In alternativa, è possibile associare l'oggetto a un campo in un'origine ButtonField dati. In questo modo è possibile visualizzare didascalie diverse per i pulsanti nell'oggetto ButtonField . I valori presenti nel campo specificato vengono utilizzati per le didascalie di testo dei pulsanti. Impostare la DataTextField proprietà per associare un ButtonField oggetto a un campo in un'origine dati.

Quando si visualizza un pulsante immagine, utilizzare la ImageUrl proprietà per specificare l'immagine da visualizzare per i pulsanti nell'oggetto ButtonField .

Nota

Tutti i pulsanti di un ButtonField oggetto condividono la stessa immagine.

È possibile nascondere un ButtonField oggetto in un controllo associato a dati impostando la Visible proprietà su false.

L'oggetto ButtonField consente di personalizzare le relative sezioni di intestazione e piè di pagina. Per visualizzare un didascalia nella sezione intestazione o piè di pagina, impostare rispettivamente le HeaderText proprietà o FooterText . Anziché visualizzare il testo nella sezione dell'intestazione, è possibile visualizzare un'immagine impostando la HeaderImageUrl proprietà . Per nascondere la sezione dell'intestazione in un ButtonField oggetto, impostare la ShowHeader proprietà su false.

Nota

Alcuni controlli associati a dati , ad esempio il GridView controllo , possono visualizzare o nascondere solo l'intera sezione di intestazione del controllo. Questi controlli associati a dati non supportano la ShowHeader proprietà per un singolo campo pulsante. Per visualizzare o nascondere l'intera sezione di intestazione di un controllo associato a dati ,se disponibile, utilizzare la ShowHeader proprietà per il controllo .

È 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. Nella tabella seguente sono elencate le diverse proprietà di stile.

Proprietà Style Impostazioni di stile per
ControlStyle Controlli server Web figlio dell'oggetto ButtonField.
FooterStyle Sezione piè di pagina dell'oggetto ButtonField.
HeaderStyle Sezione di intestazione dell'oggetto ButtonField.
ItemStyle Elementi di dati in ButtonField.

Costruttori

ButtonField()

Inizializza una nuova istanza della classe ButtonField.

Proprietà

AccessibleHeaderText

Ottiene o imposta il testo che viene sottoposto a rendering come valore della proprietà AbbreviatedText in alcuni controlli.

(Ereditato da DataControlField)
ButtonType

Ottiene o imposta il tipo di pulsante da visualizzare nel campo pulsante.

(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.

(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.

Control

Ottiene un riferimento al controllo dati a cui l'oggetto DataControlField è associato.

(Ereditato da DataControlField)
ControlStyle

Ottiene lo stile di tutti i controlli server Web contenuti nell'oggetto DataControlField.

(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.

DataTextFormatString

Ottiene o imposta la stringa in cui è specificato il formato di visualizzazione per il valore del campo.

DesignMode

Ottiene un valore che indica se un campo di controllo dati è attualmente visualizzato in un ambiente di progettazione.

(Ereditato da DataControlField)
FooterStyle

Ottiene o imposta lo stile del piè di pagina del campo di controllo dati.

(Ereditato da DataControlField)
FooterText

Ottiene o imposta il testo visualizzato nell'elemento del piè di pagina del campo di controllo dati.

(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.

(Ereditato da DataControlField)
HeaderStyle

Ottiene o imposta lo stile dell'intestazione del campo di controllo dati.

(Ereditato da DataControlField)
HeaderText

Ottiene o imposta il testo visualizzato nell'elemento dell'intestazione di un campo di controllo dati.

(Ereditato da DataControlField)
ImageUrl

Ottiene o imposta l'immagine da visualizzare per ciascun pulsante nell'oggetto ButtonField.

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.

(Ereditato da DataControlField)
IsTrackingViewState

Ottiene un valore che indica se l'oggetto DataControlField sta salvando le modifiche apportate al relativo stato di visualizzazione.

(Ereditato da DataControlField)
ItemStyle

Ottiene lo stile di tutti i contenuti basati sul testo visualizzati da un campo di controllo dati.

(Ereditato da DataControlField)
ShowHeader

Ottiene o imposta un valore che indica se la sezione di intestazione viene visualizzata in un oggetto ButtonFieldBase.

(Ereditato da ButtonFieldBase)
SortExpression

Ottiene o imposta l'espressione di ordinamento che viene utilizzata da un controllo origine dati per ordinare i dati.

(Ereditato da DataControlField)
Text

Ottiene o imposta la didascalia statica visualizzata per ciascun pulsante nell'oggetto ButtonField.

ValidateRequestMode

Ottiene o imposta un valore che specifica se il controllo convalida l'input del client.

(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.

(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.

(Ereditato da DataControlField)
Visible

Ottiene o imposta un valore che indica se viene eseguito il rendering di un campo di controllo dati.

(Ereditato da DataControlField)

Metodi

CloneField()

Crea una copia duplicata dell'oggetto corrente derivato da DataControlField.

(Ereditato da DataControlField)
CopyProperties(DataControlField)

Copia le proprietà dell'oggetto ButtonField corrente nell'oggetto DataControlField specificato.

CreateField()

Crea e restituisce una nuova istanza della classe ButtonField.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(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.

(Ereditato da DataControlField)
FormatDataTextValue(Object)

Esegue la formattazione del valore di campo specificato per una cella nell'oggetto ButtonField.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
Initialize(Boolean, Control)

Inizializza l'oggetto ButtonField corrente.

InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Inizializza l'oggetto DataControlFieldCell specificato nello stato della riga specificata.

LoadViewState(Object)

Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati.

(Ereditato da DataControlField)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
OnFieldChanged()

Genera l'evento FieldChanged.

(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.

(Ereditato da DataControlField)
ToString()

Restituisce una stringa che rappresenta questo oggetto DataControlField.

(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.

(Ereditato da DataControlField)
ValidateSupportsCallback()

Determina se i controlli contenuti in un oggetto ButtonField supportano i callback.

Implementazioni dell'interfaccia esplicita

IDataSourceViewSchemaAccessor.DataSourceViewSchema

Ottiene o imposta lo schema associato all'oggetto DataControlField.

(Ereditato da DataControlField)
IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto DataControlField sta salvando le modifiche apportate al relativo stato di visualizzazione.

(Ereditato da DataControlField)
IStateManager.LoadViewState(Object)

Ripristina lo stato di visualizzazione del campo del controllo dati salvato in precedenza.

(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.

(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.

(Ereditato da DataControlField)

Si applica a

Vedi anche