Partilhar via


DynamicField Classe

Definição

Representa um campo de dados exibido em um controle associado a dados que usa ASP.NET recursos de Dados Dinâmicos.

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
Herança
DynamicField
Implementações

Exemplos

O exemplo a seguir demonstra como usar o DynamicField objeto em um GridView controle para exibir e editar valores de uma tabela de banco de dados.

<%@ 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>

Comentários

Neste tópico:

Introdução

A DynamicField classe é usada por controles associados a dados, como e DetailsViewGridView controles, para exibir um valor de campo que usa ASP.NET recursos de Dados Dinâmicos em páginas personalizadas.

A DynamicField classe fornece funcionalidade semelhante à da BoundField classe. No entanto, como um DynamicField objeto é usado em aplicativos de Dados Dinâmicos, você pode aproveitar os seguintes recursos de Dados Dinâmicos:

  • Renderizando automaticamente o controle adequado para um campo usando modelos de campo, com base no tipo de dados. Os modelos de campo podem ser modificados globalmente para todo o aplicativo.

  • Fornecendo validação de dados interna com base no esquema de banco de dados. Você também pode adicionar tipos de validação personalizando o modelo de dados.

  • Personalizando a renderização de dados para campos individuais usando atributos no modelo de dados ou usando a UIHint propriedade.

O DynamicField objeto renderiza cada campo usando um DynamicControl controle. Para especificar o campo de dados a ser exibido em um DynamicField objeto, defina a DataField propriedade como o nome do campo. Você pode aplicar uma cadeia de caracteres de formatação personalizada ao valor do campo definindo a DataFormatString propriedade. Por padrão, a cadeia de caracteres de formatação é aplicada a valores de campo somente quando o controle associado a dados está no modo somente leitura. Para aplicar a cadeia de caracteres de formatação a valores exibidos enquanto o controle associado a dados estiver no modo de edição, defina a ApplyFormatInEditMode propriedade como true. Se um valor de campo for null, você poderá exibir uma legenda personalizada definindo a NullDisplayText propriedade. O DynamicField objeto também pode converter automaticamente valores de campo de cadeia de caracteres vazias ("") em valores nulos definindo a ConvertEmptyStringToNull propriedade como true.

Sintaxe declarativa

<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 />

Construtores

Nome Description
DynamicField()

Inicializa uma nova instância da classe DynamicField.

Propriedades

Nome Description
AccessibleHeaderText

Obtém ou define o texto renderizado como o valor da AbbreviatedText propriedade em alguns controles.

(Herdado de DataControlField)
ApplyFormatInEditMode

Obtém ou define um valor que indica se a cadeia de caracteres formatada especificada pela DataFormatString propriedade é aplicada ao valor do campo quando o campo de dados está no modo de edição.

Column

Obtém o MetaColumn objeto ao qual esse DynamicField objeto está associado.

Control

Obtém uma referência ao controle de dados ao qual o DataControlField objeto está associado.

(Herdado de DataControlField)
ControlStyle

Obtém o estilo de todos os controles de servidor Web contidos pelo DataControlField objeto.

(Herdado de DataControlField)
ConvertEmptyStringToNull

Obtém ou define um valor que indica se os valores de cadeia de caracteres vazios ("") são convertidos automaticamente em valores nulos quando o campo de dados é atualizado na fonte de dados.

DataField

Obtém ou define o nome do campo de dados ao qual associar o DynamicField objeto.

DataFormatString

Obtém ou define a cadeia de caracteres que especifica o formato de exibição para o valor do campo de dados.

DesignMode

Obtém um valor que indica se um campo de controle de dados é exibido no momento 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 cabeçalho do controle associado a dados que contém o DynamicField objeto.

HtmlEncode

Obtém ou define um valor que indica se os valores do campo de dados são codificados em HTML antes de serem exibidos em um DynamicField objeto.

InsertVisible

Obtém um valor que indica se o DataControlField objeto está visível quando seu controle associado a dados pai está no modo de inserção.

(Herdado de DataControlField)
IsTrackingViewState

Obtém um valor que indica se o DataControlField objeto está salvando alterações em seu 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)
NullDisplayText

Obtém ou define a legenda exibida para um campo de dados quando o valor do campo é null.

ReadOnly

Obtém o estado somente leitura do campo dinâmico.

ShowHeader

Obtém ou define um valor que indica se o item de cabeçalho de um campo de controle de dados é renderizado.

(Herdado de DataControlField)
SortExpression

Obtém ou define a expressão de classificação usada quando o campo de dados é usado para classificar a fonte de dados.

UIHint

Obtém ou define o modelo de campo a ser usado para exibir o campo de dados.

ValidateRequestMode

Obtém ou define um valor que especifica se o controle valida a entrada do cliente.

ValidationGroup

Obtém o ValidationGroup objeto ao qual esse DynamicField objeto está associado.

ViewState

Obtém um dicionário de informações de estado que permite salvar e restaurar o estado de exibição de um DataControlField objeto em várias solicitações para a 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

Nome Description
CloneField()

Cria uma cópia duplicada do objeto derivado atual DataControlField.

(Herdado de DataControlField)
ConfigureDynamicControl(DynamicControl)

Fornece um mecanismo para modificar um DynamicControl objeto que foi criado pelo InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) método.

CopyProperties(DataControlField)

Copia as propriedades do objeto atual DynamicField para o objeto especificado DataControlField .

CreateDynamicControl()

Fornece um mecanismo para classes que derivam de DynamicField substituir como um DynamicControl objeto é criado.

CreateField()

Cria e retorna uma nova instância da DynamicField classe.

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 dados da célula da tabela atual e adiciona o valor ao dicionário especificado.

GetAttribute(String)

Recupera o valor do atributo especificado.

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)

Executa a inicialização de instância básica para um campo de controle de dados.

(Herdado de DataControlField)
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Adiciona texto ou controles à célula especificada.

LoadViewState(Object)

Restaura o estado de exibição salvo anteriormente da exibição da fonte de dados.

(Herdado de DataControlField)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
OnFieldChanged()

Aciona o evento FieldChanged.

(Herdado de DataControlField)
SaveViewState()

Salva as alterações feitas no estado de exibição DataControlField desde o momento em que a página foi postada de volta no servidor.

(Herdado de DataControlField)
SetAttribute(String, String)

Define um atributo associado ao DynamicField objeto.

ToString()

Retorna uma cadeia de caracteres que representa esse DataControlField objeto.

(Herdado de DataControlField)
TrackViewState()

Faz com que o DataControlField objeto acompanhe as alterações em seu estado de exibição para que elas possam ser armazenadas na propriedade do ViewState controle e mantidas entre solicitações para a mesma página.

(Herdado de DataControlField)
ValidateSupportsCallback()

Quando substituído em uma classe derivada, sinaliza que os controles contidos por um campo dão suporte a retornos de chamada.

(Herdado de DataControlField)

Implantações explícitas de interface

Nome Description
IDataSourceViewSchemaAccessor.DataSourceViewSchema

Obtém ou define o esquema associado a esse DataControlField objeto.

(Herdado de DataControlField)
IStateManager.IsTrackingViewState

Obtém um valor que indica se o DataControlField objeto está salvando alterações em seu 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 o momento em que a página foi postada de volta no servidor.

(Herdado de DataControlField)
IStateManager.TrackViewState()

Faz com que o DataControlField objeto acompanhe as alterações em seu estado de exibição para que elas possam ser armazenadas na propriedade do ViewState controle e mantidas entre solicitações para a mesma página.

(Herdado de DataControlField)

Métodos de Extensão

Nome Description
ConvertEditedValue(IFieldFormattingOptions, String)

Retorna o valor fornecido por um usuário para um controle que está sendo validado.

FormatEditValue(IFieldFormattingOptions, Object)

Formata o valor de campo especificado usando as opções de formatação especificadas.

FormatValue(IFieldFormattingOptions, Object)

Formata o valor de campo especificado usando as opções de formatação especificadas.

Aplica-se a

Confira também