Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
UniqueID, propriété

Control.UniqueID, propriété

Mise à jour : novembre 2007

Obtient l'identificateur unique qualifié sur le plan hiérarchique du contrôle serveur.

Espace de noms :  System.Web.UI
Assembly :  System.Web (dans System.Web.dll)

[BrowsableAttribute(false)]
public virtual string UniqueID { get; }
/** @property */
/** @attribute BrowsableAttribute(false) */
public String get_UniqueID()

public function get UniqueID () : String

Valeur de propriété

Type : System.String

Identificateur complet du contrôle serveur.

Cette propriété diffère de la propriété ID, en ce sens que la propriété UniqueID comprend l'identificateur du conteneur d'attribution de noms du contrôle serveur. Cet identificateur est généré automatiquement lors du traitement d'une demande de page.

Cette propriété est particulièrement importante pour la différenciation des contrôles serveur contenus dans un autre contrôle serveur de liaison de données qui est répété. Le contrôle répété, c'est-à-dire un des contrôles serveur Web Repeater, DataList, DetailsView, FormView et GridView (ou tout contrôle serveur personnalisé que vous créez comprenant des fonctionnalités de répétition lorsqu'il est lié aux données), joue le rôle de conteneur d'attribution de noms pour ses contrôles enfants. Cela signifie qu'il crée un espace de noms unique pour ses contrôles enfants afin que les valeurs de leurs propriétés ID n'entrent pas en conflit.

Par exemple, si vous insérez un contrôle serveur Web ASP.NET Label dans un contrôle serveur Repeater, puis vous assignez à la propriété ID du contrôle Label la valeur MyLabel et à Repeater la valeur MyRepeater pour ID. Si vous liez des données au Repeater d'un objet ArrayList possédant trois entrées, les propriétés UniqueID obtenues pour chaque instance des contrôles serveur Label sont MyRepeater$ctl00$MyLabel, MyRepeater$ctl01$MyLabel et MyRepeater$ctl02$MyLabel.

L'exemple suivant crée un objet ArrayList et le remplit avec trois chaînes de texte, puis lie un contrôle serveur Web Repeater aux données de ArrayList au moment du chargement de la page. Le code reçoit la propriété UniqueID pour chaque contrôle enfant généré pendant la liaison aux données. Le code génère trois versions du contrôle Label et écrit les valeurs de leur propriété UniqueID dans la page.

<script language="c#" runat="server">

  void Page_Load(Object sender, EventArgs e) 
  {
      StringBuilder sb = new StringBuilder();
      sb.Append("Container: " + 
          MyDataList.NamingContainer.ToString() + "<p>");

      ArrayList a = new ArrayList();
      a.Add("A");
      a.Add("B");
      a.Add("C");

      MyDataList.DataSource = a;
      MyDataList.DataBind();

      for (int i = 0; i < MyDataList.Controls.Count; i++)
      {
          Label l = 
              (Label)((RepeaterItem)MyDataList.Controls[i]).FindControl("MyLabel");
          sb.Append("Container: " + 
              ((RepeaterItem)MyDataList.Controls[i]).NamingContainer.ToString() + 
              "<p>");
          sb.Append("<b>" + l.UniqueID + "</b><p>");
      }
      ResultsLabel.Text = sb.ToString();
}
</script>


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft