Condividi tramite


ClientIDMode Enumerazione

Definizione

Specifica in che modo viene generato, da ASP.NET, un valore ClientID per un controllo a cui è possibile accedere in script client.

public enum class ClientIDMode
public enum ClientIDMode
type ClientIDMode = 
Public Enum ClientIDMode
Ereditarietà
ClientIDMode

Campi

AutoID 1

Il valore ClientID viene generato tramite la concatenazione dei valori ID di ogni contenitore di denominazione padre con il valore ID del controllo. In scenari di associazione a dati in cui viene eseguito il rendering di più istanze di un controllo, viene inserito un valore incrementale davanti al valore ID del controllo. Ogni segmento è separato da un carattere di sottolineatura (_). Questo algoritmo è l'unico disponibile nelle versioni di ASP.NET precedenti ad ASP.NET 4.

Inherit 0

Il controllo eredita l'impostazione ClientIDMode del relativo controllo NamingContainer.

Predictable 2

Questo algoritmo viene utilizzato per controlli inclusi in controlli associati a dati. Il valore ClientID viene generato tramite la concatenazione del valore ClientID del contenitore di denominazione padre con il valore ID del controllo. Se il controllo è un controllo associato a dati che genera più righe, il valore del campo dati specificato nella proprietà ClientIDRowSuffix viene aggiunto alla fine. Per il controllo GridView, è possibile specificare più campi dati. Se la proprietà ClientIDRowSuffix è vuota, viene aggiunto un numero sequenziale alla fine anziché un valore del campo dati. Ogni segmento è separato da un carattere di sottolineatura (_).

Static 3

Il valore ClientID è impostato sul valore della proprietà ID. Se il controllo è un contenitore di denominazione, il controllo viene utilizzato come elemento principale della gerarchia di contenitori di denominazione per qualsiasi controllo contenuto.

Esempio

Nell'esempio seguente vengono illustrati Label i controlli contenuti in un ListView controllo . ListView Nel controllo la ClientIDMode proprietà è impostata su Stimabile e la ClientIDRowSuffix proprietà è impostata su ProductID. Dallo script client è possibile accedere a una particolare istanza di un oggetto Label in base al ProductID valore dell'istanza a cui si sta tentando di accedere.

In questo esempio viene creato codice HTML con tre ProductIDLabel controlli. Quando viene eseguita la pagina, gli ID per i controlli saranno i seguenti:

  • ListView1_ProductIDLabel_1
  • ListView1_ProductIDLabel_34
  • ListView1_ProductIDLabel_43
<asp:XmlDataSource ID="XmlDataSource1" runat="server" 
                   XPath="Products/Product">
  <Data>
    <Products>
      <Product ProductID="1"  ProductName="Chai" />
      <Product ProductID="34" ProductName="Ale" />
      <Product ProductID="43" ProductName="Coffee" />
    </Products>
  </Data>
</asp:XmlDataSource>

<asp:ListView ID="ListView1" 
              ClientIDMode="Predictable" 
              ClientIDRowSuffix="ProductID"  
              DataSourceID="XmlDataSource1" runat="server" >
  <ItemTemplate>
    ProductID: 
    <asp:Label ID="ProductIDLabel" runat="server" 
               Text='<%# Eval("ProductID") %>' />
    <br />
    ProductName:
    <asp:Label ID="ProductNameLabel" runat="server" 
               Text='<%# Eval("ProductName") %>' />
    <br />
    <br />
  </ItemTemplate>

  <LayoutTemplate>
    <div ID="itemPlaceholderContainer" runat="server">
      <span ID="itemPlaceholder" runat="server" />
    </div>
    <div>
    </div>
  </LayoutTemplate>
  
</asp:ListView>

Commenti

L'enumerazione ClientIDMode viene utilizzata quando si imposta la ClientIDMode proprietà per un controllo . Il valore assegnato alla ClientIDMode proprietà determina la modalità di generazione della ClientID proprietà. Il rendering del valore della ClientID proprietà viene eseguito come id attributo nel markup ed è il valore usato per accedere al controllo dallo script client. Il valore assegnato alla ClientIDMode proprietà non influisce sulla ID proprietà del controllo server, ma solo sull'attributo dell'elemento id HTML corrispondente.

Il valore predefinito di ClientIDMode per una pagina è Stimabile. Il valore predefinito di ClientIDMode per un controllo è Inherit.

Poiché l'impostazione predefinita per i controlli è Inherit, la modalità di generazione predefinita è Stimabile. Se tuttavia si usa Visual Studio per convertire un progetto Web in ASP.NET 4 da una versione precedente, Visual Studio imposta automaticamente il valore predefinito su AutoID nel file Web.config.

È possibile impostare il ClientIDMode valore per tutte le pagine di un sito Web impostando l'elemento pages nel file Web.config del sito. È possibile impostare il ClientIDMode valore per una pagina nella direttiva @ Page .

Per altre informazioni, vedere ASP.NET Web Server Control Identification (Identificazione del controllo server Web ASP.NET).

Si applica a

Vedi anche