Condividi tramite


DynamicField Classe

Definizione

Rappresenta un campo dati visualizzato in un controllo associato a dati che utilizza ASP.NET funzionalità di Dynamic Data.

public ref class DynamicField : System::Web::UI::WebControls::DataControlField, System::Web::DynamicData::IFieldFormattingOptions, System::Web::UI::IAttributeAccessor
public class DynamicField : System.Web.UI.WebControls.DataControlField, System.Web.DynamicData.IFieldFormattingOptions, System.Web.UI.IAttributeAccessor
type DynamicField = class
    inherit DataControlField
    interface IAttributeAccessor
    interface IFieldFormattingOptions
Public Class DynamicField
Inherits DataControlField
Implements IAttributeAccessor, IFieldFormattingOptions
Ereditarietà
DynamicField
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come utilizzare l'oggetto DynamicField in un GridView controllo per visualizzare e modificare i valori di una tabella di database.

<%@ 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">
  protected void Page_Init(object sender, EventArgs e)
  {
    DynamicDataManager1.RegisterControl(CustomersGridView);
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title>DynamicField Sample</title>
  <link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body>
  <form id="form1" runat="server">
    <div>
    
      <h2><%= CustomersDataSource.TableName%> Table</h2>
      
      <asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
        AutoLoadForeignKeys="true" />
        
      <asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true" 
        HeaderText="List of validation errors"  />
      <asp:DynamicValidator runat="server" ID="DynamicValidator1"
        ControlToValidate="CustomersGridView" Display="None" />
        
      <asp:GridView ID="CustomersGridView" runat="server"
        AutoGenerateColumns="false"
        AutoGenerateEditButton="true"
        AutoGenerateDeleteButton="true"
        DataSourceID="CustomersDataSource"
        AllowPaging="true"
        AllowSorting="true"
        CssClass="gridview">
        <Columns>
          <asp:DynamicField DataField="CustomerID" />
          <asp:DynamicField DataField="FirstName" />
          <asp:DynamicField DataField="LastName" />
        </Columns>        
      </asp:GridView>

      <!-- This example uses Microsoft SQL Server and connects   -->
      <!-- to the AdventureWorksLT sample database.              -->
      <asp:LinqDataSource ID="CustomersDataSource" runat="server" 
        TableName="Customers"
        ContextTypeName="AdventureWorksLTDataContext"
        EnableUpdate="true"
        EnableDelete="true" >
      </asp:LinqDataSource>
      
    </div>
  </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">
  
  Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs)    
    DynamicDataManager1.RegisterControl(CustomersGridView)
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title>DynamicField Sample</title>
  <link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body>
  <form id="form1" runat="server">
    <div>
    
      <h2><%= CustomersDataSource.TableName%> Table</h2>
      
      <asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
        AutoLoadForeignKeys="true" />
        
      <asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true" 
        HeaderText="List of validation errors"  />
      <asp:DynamicValidator runat="server" ID="DynamicValidator1"
        ControlToValidate="CustomersGridView" Display="None" />
        
      <asp:GridView ID="CustomersGridView" runat="server"
        AutoGenerateColumns="false"
        AutoGenerateEditButton="true"
        AutoGenerateDeleteButton="true"
        DataSourceID="CustomersDataSource"
        AllowPaging="true"
        AllowSorting="true"
        CssClass="gridview">
        <Columns>
          <asp:DynamicField DataField="CustomerID" />
          <asp:DynamicField DataField="FirstName" />
          <asp:DynamicField DataField="LastName" />
        </Columns>        
      </asp:GridView>

      <!-- This example uses Microsoft SQL Server and connects   -->
      <!-- to the AdventureWorksLT sample database.              -->
      <asp:LinqDataSource ID="CustomersDataSource" runat="server" 
        TableName="Customers"
        ContextTypeName="AdventureWorksLTDataContext"
        EnableUpdate="true"
        EnableDelete="true" >
      </asp:LinqDataSource>
      
    </div>
  </form>
</body>
</html>

Commenti

In questo argomento:

Introduzione

La DynamicField classe viene usata dai controlli associati a dati, ad esempio i GridView controlli e DetailsView , per visualizzare un valore di campo che usa ASP.NET funzionalità dynamic data nelle pagine personalizzate.

La DynamicField classe fornisce funzionalità simili a quelle della BoundField classe . Tuttavia, poiché un DynamicField oggetto viene usato nelle applicazioni Dynamic Data, è possibile sfruttare le seguenti funzionalità di Dynamic Data:

  • Esegue automaticamente il rendering del controllo appropriato per un campo usando i modelli di campo, in base al tipo di dati. I modelli di campo possono essere modificati a livello globale per l'intera applicazione.

  • Fornire la convalida dei dati predefinita in base allo schema del database. È anche possibile aggiungere tipi di convalida personalizzando il modello di dati.

  • Personalizzazione del rendering dei dati per singoli campi tramite attributi nel modello di dati o tramite la UIHint proprietà .

L'oggetto esegue il DynamicField rendering di ogni campo utilizzando un DynamicControl controllo . Per specificare il campo dati da visualizzare in un DynamicField oggetto, impostare la DataField proprietà sul nome del campo. È possibile applicare una stringa di formattazione personalizzata al valore del campo impostando la DataFormatString proprietà . Per impostazione predefinita, la stringa di formattazione viene applicata ai valori di campo solo quando il controllo associato a dati è in modalità di sola lettura. Per applicare la stringa di formattazione ai valori visualizzati mentre il controllo associato a dati è in modalità di modifica, impostare la ApplyFormatInEditMode proprietà su true. Se un valore di campo è null, è possibile visualizzare una didascalia personalizzata impostando la NullDisplayText proprietà . L'oggetto DynamicField può anche convertire automaticamente i valori di campo stringa vuota ("") in valori Null impostando la ConvertEmptyStringToNull proprietà su true.

Sintassi dichiarativa

<asp:DynamicField
    AccessibleHeaderText="string"
    ApplyFormatInEditMode="true|false"
    ControlStyle-BackColor="color name|#dddddd"
    ControlStyle-BorderColor="color name|#dddddd"
    ControlStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
       Ridge|Inset|Outset"
    ControlStyle-BorderWidth="size"
    ControlStyle-CssClass="string"
    ControlStyle-Font-Bold="true|false"
    ControlStyle-Font-Italic="true|false"
    ControlStyle-Font-Names="string"
    ControlStyle-Font-Overline="true|false"
    ControlStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
       Large|X-Large|XX-Large"
    ControlStyle-Font-Strikeout="true|false"
    ControlStyle-Font-Underline="true|false"
    ControlStyle-ForeColor="color name|#dddddd"
    ControlStyle-Height="size"
    ControlStyle-Width="size"
    ConvertEmptyStringToNull="true|false"
    DataField="string"
    DataFormatString="string"
    FooterStyle-BackColor="color name|#dddddd"
    FooterStyle-BorderColor="color name|#dddddd"
    FooterStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
       Ridge|Inset|Outset"
    FooterStyle-BorderWidth="size"
    FooterStyle-CssClass="string"
    FooterStyle-Font-Bold="true|false"
    FooterStyle-Font-Italic="true|false"
    FooterStyle-Font-Names="string"
    FooterStyle-Font-Overline="true|false"
    FooterStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
       Large|X-Large|XX-Large"
    FooterStyle-Font-Strikeout="true|false"
    FooterStyle-Font-Underline="true|false"
    FooterStyle-ForeColor="color name|#dddddd"
    FooterStyle-Height="size"
    FooterStyle-Width="size"
    FooterStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
    FooterStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
    FooterStyle-Wrap="true|false"
    HeaderImageUrl="uri"
    HeaderStyle-BackColor="color name|#dddddd"
    HeaderStyle-BorderColor="color name|#dddddd"
    HeaderStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
       Ridge|Inset|Outset"
    HeaderStyle-BorderWidth="size"
    HeaderStyle-CssClass="string"
    HeaderStyle-Font-Bold="true|false"
    HeaderStyle-Font-Italic="true|false"
    HeaderStyle-Font-Names="string"
    HeaderStyle-Font-Overline="true|false"
    HeaderStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
       Large|X-Large|XX-Large"
    HeaderStyle-Font-Strikeout="true|false"
    HeaderStyle-Font-Underline="true|false"
    HeaderStyle-ForeColor="color name|#dddddd"
    HeaderStyle-Height="size"
    HeaderStyle-Width="size"
    HeaderStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
    HeaderStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
    HeaderStyle-Wrap="true|false"
    HeaderText="string"
    InsertVisible="true|false"
    ItemStyle-BackColor="color name|#dddddd"
    ItemStyle-BorderColor="color name|#dddddd"
    ItemStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
       Ridge|Inset|Outset"
    ItemStyle-BorderWidth="size"
    ItemStyle-CssClass="string"
    ItemStyle-Font-Bold="true|false"
    ItemStyle-Font-Italic="true|false"
    ItemStyle-Font-Names="string"
    ItemStyle-Font-Overline="true|false"
    ItemStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
       Large|X-Large|XX-Large"
    ItemStyle-Font-Strikeout="true|false"
    ItemStyle-Font-Underline="true|false"
    ItemStyle-ForeColor="color name|#dddddd"
    ItemStyle-Height="size"
    ItemStyle-Width="size"
    ItemStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
    ItemStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
    ItemStyle-Wrap="true|false"
    NullDisplayText="string"
    ReadOnly="true|false"
    ShowHeader="true|false"
    SortExpression="string"
    UIHint="string"
    ValidationGroup="string"
    Visible="true|false"
    />
<asp:DynamicField />

Costruttori

Nome Descrizione
DynamicField()

Inizializza una nuova istanza della classe DynamicField.

Proprietà

Nome Descrizione
AccessibleHeaderText

Ottiene o imposta il testo di cui viene eseguito il rendering come valore della AbbreviatedText proprietà in alcuni controlli.

(Ereditato da DataControlField)
ApplyFormatInEditMode

Ottiene o imposta un valore che indica se la stringa formattata specificata dalla DataFormatString proprietà viene applicata al valore del campo quando il campo dati è in modalità di modifica.

Column

Ottiene l'oggetto MetaColumn a cui è associato questo DynamicField oggetto.

Control

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

(Ereditato da DataControlField)
ControlStyle

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

(Ereditato da DataControlField)
ConvertEmptyStringToNull

Ottiene o imposta un valore che indica se i valori stringa vuoti ("") vengono convertiti automaticamente in valori Null quando il campo dati viene aggiornato nell'origine dati.

DataField

Ottiene o imposta il nome del campo dati a cui associare l'oggetto DynamicField .

DataFormatString

Ottiene o imposta la stringa che specifica il formato di visualizzazione per il valore del campo dati.

DesignMode

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

(Ereditato da DataControlField)
FooterStyle

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

(Ereditato da DataControlField)
FooterText

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

(Ereditato da DataControlField)
HeaderImageUrl

Ottiene o imposta l'URL di un'immagine visualizzata nell'elemento di intestazione di un campo di controllo dati.

(Ereditato da DataControlField)
HeaderStyle

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

(Ereditato da DataControlField)
HeaderText

Ottiene o imposta il testo visualizzato nell'intestazione del controllo associato a dati che contiene l'oggetto DynamicField .

HtmlEncode

Ottiene o imposta un valore che indica se i valori dei campi dati sono codificati in formato HTML prima che vengano visualizzati in un DynamicField oggetto .

InsertVisible

Ottiene un valore che indica se l'oggetto è visibile quando il DataControlField controllo associato a dati padre è in modalità di inserimento.

(Ereditato da DataControlField)
IsTrackingViewState

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

(Ereditato da DataControlField)
ItemStyle

Ottiene lo stile di qualsiasi contenuto basato su testo visualizzato da un campo di controllo dati.

(Ereditato da DataControlField)
NullDisplayText

Ottiene o imposta la didascalia visualizzata per un campo dati quando il valore del campo è null.

ReadOnly

Ottiene lo stato di sola lettura del campo dinamico.

ShowHeader

Ottiene o imposta un valore che indica se viene eseguito il rendering dell'elemento di intestazione di un campo del controllo dati.

(Ereditato da DataControlField)
SortExpression

Ottiene o imposta l'espressione di ordinamento utilizzata quando viene utilizzato il campo dati per ordinare l'origine dati.

UIHint

Ottiene o imposta il modello di campo da utilizzare per la visualizzazione del campo dati.

ValidateRequestMode

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

ValidationGroup

Ottiene l'oggetto ValidationGroup a cui è associato questo DynamicField oggetto.

ViewState

Ottiene un dizionario di informazioni sullo stato che consente di salvare e ripristinare lo stato di visualizzazione di un DataControlField oggetto in 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

Nome Descrizione
CloneField()

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

(Ereditato da DataControlField)
ConfigureDynamicControl(DynamicControl)

Fornisce un meccanismo per modificare un DynamicControl oggetto creato dal InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) metodo .

CopyProperties(DataControlField)

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

CreateDynamicControl()

Fornisce un meccanismo per le classi che derivano da DynamicField per eseguire l'override della modalità di creazione di un DynamicControl oggetto.

CreateField()

Crea e restituisce una nuova istanza della DynamicField classe .

Equals(Object)

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

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

Estrae il valore del campo dati dalla cella della tabella corrente e aggiunge il valore al dizionario specificato.

GetAttribute(String)

Recupera il valore dell'attributo specificato.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
Initialize(Boolean, Control)

Esegue l'inizializzazione di istanza di base per un campo di controllo dati.

(Ereditato da DataControlField)
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Aggiunge testo o controlli alla cella specificata.

LoadViewState(Object)

Ripristina lo stato di visualizzazione salvata in precedenza della vista origine dati.

(Ereditato da DataControlField)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
OnFieldChanged()

Genera l'evento FieldChanged.

(Ereditato da DataControlField)
SaveViewState()

Salva le modifiche apportate allo stato di DataControlField visualizzazione dal momento in cui la pagina è stata pubblicata nel server.

(Ereditato da DataControlField)
SetAttribute(String, String)

Imposta un attributo associato all'oggetto DynamicField .

ToString()

Restituisce una stringa che rappresenta questo DataControlField oggetto.

(Ereditato da DataControlField)
TrackViewState()

Fa in modo che l'oggetto DataControlField possa tenere traccia delle modifiche apportate allo stato di visualizzazione in modo che possano essere archiviate nella proprietà del ViewState controllo e mantenute tra le richieste per la stessa pagina.

(Ereditato da DataControlField)
ValidateSupportsCallback()

Quando sottoposto a override in una classe derivata, segnala che i controlli contenuti in un campo supportano i callback.

(Ereditato da DataControlField)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IDataSourceViewSchemaAccessor.DataSourceViewSchema

Ottiene o imposta lo schema associato a questo DataControlField oggetto.

(Ereditato da DataControlField)
IStateManager.IsTrackingViewState

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

(Ereditato da DataControlField)
IStateManager.LoadViewState(Object)

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

(Ereditato da DataControlField)
IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di DataControlField visualizzazione dal momento in cui la pagina è stata pubblicata nel server.

(Ereditato da DataControlField)
IStateManager.TrackViewState()

Fa in modo che l'oggetto DataControlField possa tenere traccia delle modifiche apportate allo stato di visualizzazione in modo che possano essere archiviate nella proprietà del ViewState controllo e mantenute tra le richieste per la stessa pagina.

(Ereditato da DataControlField)

Metodi di estensione

Nome Descrizione
ConvertEditedValue(IFieldFormattingOptions, String)

Restituisce il valore fornito da un utente per un controllo da convalidare.

FormatEditValue(IFieldFormattingOptions, Object)

Formatta il valore del campo specificato utilizzando le opzioni di formattazione specificate.

FormatValue(IFieldFormattingOptions, Object)

Formatta il valore del campo specificato utilizzando le opzioni di formattazione specificate.

Si applica a

Vedi anche