Specifica in che modo viene generato, da ASP.NET, un valore ClientID per un controllo a cui è possibile accedere in script client.
Assembly: System.Web (in System.Web.dll)
Public Enumeration ClientIDMode
public enum ClientIDMode
public enum class ClientIDMode
type ClientIDMode
| Nome membro | Descrizione | |
|---|---|---|
| Inherit | Il controllo eredita l'impostazione ClientIDMode del controllo padre. | |
| AutoID | 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. | |
| Predictable | 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 | 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. |
Si utilizza l'enumerazione ClientIDMode quando si imposta la proprietà ClientIDMode per un controllo. Il valore assegnato alla proprietà ClientIDMode determina in che modo viene generata la proprietà ClientID. Il rendering del valore della proprietà ClientID viene eseguito come l'attributo id in markup, ed è il valore che viene utilizzato per accedere al controllo dallo script client. Il valore assegnato alla proprietà ClientIDMode non ha effetto sulla proprietà ID del controllo server, solo l'attributo id dell'elemento HTML corrispondente.
Il valore predefinito di ClientIDMode per una pagina è Predictable. Il valore predefinito di ClientIDMode per un controllo è Inherit.
Poiché l'impostazione predefinita per i controlli è Inherit, la modalità di generazione predefinita è Predictable. Se tuttavia si utilizza Visual Studio per convertire un progetto Web da una versione precedente ad ASP.NET 4, in Visual Studio verrà impostato automaticamente l'attributo AutoID nel file Web.config.
È possibile impostare il valore ClientIDMode per tutte le pagine in un sito Web impostando l'elemento delle pagine nel file Web.config del sito. È possibile impostare il valore ClientIDMode per una pagina nella direttiva @ Page.
Per ulteriori informazioni, vedere Identificazione dei controlli server Web ASP.NET.
Nell'esempio riportato di seguito vengono mostrati i controlli Label contenuti in un controllo ListView. Nel controllo ListView, la proprietà ClientIDMode è impostata su Predictable e la proprietà ClientIDRowSuffix è impostata su ProductID. Dallo script client, è possibile accedere a una particolare istanza di un Label in base al valore ProductID dell'istanza alla quale si sta cercando di accedere.
In questo esempio viene creato un codice HTML con tre controlli ProductIDLabel. Quando la pagina è in esecuzione, gli ID per i controlli saranno:
-
ListView1_ProductIDLabel_1
-
ListView1_ProductIDLabel_34
-
ListView1_ProductIDLabel_43
Per ulteriori informazioni, vedere Identificazione dei controlli server Web ASP.NET.
<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>
.NET Framework
Supportato in: 4Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2
.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.