Partager via


Control.ClientIDMode Propriété

Définition

Obtient ou définit l'algorithme utilisé pour générer la valeur de la propriété 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

Valeur de propriété

Valeur qui indique comment la propriété ClientID est générée. La valeur par défaut est Inherit.

Attributs

Exemples

L’exemple suivant montre Label les contrôles contenus dans un ListView contrôle. Sur le ListView contrôle, la ClientIDMode propriété est définie sur Predictable et la ClientIDRowSuffix propriété a la valeur ProductID. Dans le code HTML rendu, cela crée trois span éléments qui correspondent à trois ProductIDLabel contrôles. Lorsque la page s’exécute, les id attributs des span éléments sont définis sur les valeurs suivantes :

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

Remarques

ASP.NET fournit plusieurs algorithmes pour générer la valeur de la ClientID propriété. Vous sélectionnez l’algorithme à utiliser pour un contrôle en définissant sa ClientIDMode propriété. Les algorithmes sont identifiés par les valeurs d’énumération ClientIDMode répertoriées dans le tableau suivant.

Valeur Description
AutoID La valeur de la propriété ClientID est générée par concaténation des valeurs de la propriété ID de chaque conteneur d'attribution de noms parent à la valeur de la propriété ID du contrôle. Dans les scénarios de liaison de données où plusieurs instances d'un contrôle sont restituées, une valeur d'incrémentation est insérée devant la valeur de la propriété ID du contrôle. Chaque segment est séparé par un trait de soulignement (_). Cet algorithme a été utilisé dans les versions de ASP.NET antérieures à ASP.NET 4.
Static La propriété ClientID a la valeur de la propriété ID. Si le contrôle est un conteneur d'attribution de noms, il est utilisé comme élément le plus élevé de la hiérarchie des conteneurs d'attribution de noms pour tous les contrôles qu'il contient.
Predictable Cet algorithme est utilisé pour les contrôles contenus dans des contrôles liés aux données. La valeur de la propriété ClientID est générée par concaténation de la valeur de la propriété ClientID du conteneur d'attribution de noms parent à la valeur de la propriété ID du contrôle. Si le contrôle est un contrôle lié aux données qui génère plusieurs lignes, la valeur du champ de données spécifiée dans la propriété ClientIDRowSuffix est ajoutée à la fin. Pour le contrôle GridView, plusieurs champs de données peuvent être spécifiés. Si la ClientIDRowSuffix propriété est vide, un nombre séquentiel est ajouté à la fin au lieu d’une valeur de champ de données. Ce nombre commence à zéro et est incrémenté de 1 pour chaque ligne. Chaque segment est séparé par un trait de soulignement (_).
Inherit Le contrôle hérite du paramètre de ClientIDMode de son contrôle NamingContainer.

La valeur par défaut de ClientIDMode pour une page est Predictable. La valeur par défaut de ClientIDMode pour un contrôle est Inherit. Étant donné que la valeur par défaut des contrôles est Inherit, le mode de génération par défaut est Predictable. (Toutefois, si vous utilisez Visual Studio pour convertir un projet Web en ASP.NET 4 à partir d’une version antérieure, Visual Studio définit automatiquement le site par défaut AutoID sur dans le fichier Web.config.)

Pour plus d’informations, consultez Identification du contrôle serveur web ASP.NET.

S’applique à

Voir aussi