Condividi tramite


Control.ClientIDMode Proprietà

Definizione

Ottiene o imposta l'algoritmo utilizzato per generare il valore della proprietà ClientID.

public:
 virtual property System::Web::UI::ClientIDMode ClientIDMode { System::Web::UI::ClientIDMode get(); void set(System::Web::UI::ClientIDMode value); };
[System.Web.UI.Themeable(false)]
public virtual System.Web.UI.ClientIDMode ClientIDMode { get; set; }
[<System.Web.UI.Themeable(false)>]
member this.ClientIDMode : System.Web.UI.ClientIDMode with get, set
Public Overridable Property ClientIDMode As ClientIDMode

Valore della proprietà

Valore che indica in che modo viene generata la proprietà ClientID. Il valore predefinito è Inherit.

Attributi

Esempio

Nell'esempio seguente vengono illustrati Label i controlli contenuti in un ListView controllo. ListView Nel controllo la ClientIDMode proprietà è impostata su Predictable e la ClientIDRowSuffix proprietà è impostata su ProductID. Nel codice HTML sottoposto a rendering, in questo modo vengono creati tre elementi corrispondenti a tre spanProductIDLabel controlli. Quando viene eseguita la pagina, gli attributi per gli idspan elementi vengono impostati sui valori 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

ASP.NET fornisce più algoritmi per come generare il valore della ClientID proprietà. Selezionare l'algoritmo da usare per un controllo impostandone la ClientIDMode proprietà. Gli algoritmi vengono identificati dai ClientIDMode valori di enumerazione elencati nella tabella seguente.

valore Descrizione
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 è stato usato nelle versioni di ASP.NET precedenti a ASP.NET 4.
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.
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 ClientIDRowSuffix proprietà è vuota, viene aggiunto un numero sequenziale alla fine anziché un valore di campo dati. Questo numero inizia a zero e viene incrementato di 1 per ogni riga. Ogni segmento è separato da un carattere di sottolineatura (_).
Inherit Il controllo eredita l'impostazione ClientIDMode del relativo controllo NamingContainer.

Il valore predefinito di ClientIDMode per una pagina è Predictable. Il valore predefinito di ClientIDMode per un controllo è Inherit. Poiché il valore predefinito per i controlli è Inherit, la modalità di generazione predefinita è Predictable. Tuttavia, se si usa Visual Studio per convertire un progetto Web in ASP.NET 4 da una versione precedente, Visual Studio imposta automaticamente il valore predefinito AutoID sul sito nel file Web.config.

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

Si applica a

Vedi anche