Freigeben über


ClientIDMode Enumeration

Definition

Gibt an, wie ASP.NET die ClientID für ein Steuerelement generiert, auf das im Clientskript zugegriffen werden kann

public enum class ClientIDMode
public enum ClientIDMode
type ClientIDMode = 
Public Enum ClientIDMode
Vererbung
ClientIDMode

Felder

AutoID 1

Der ClientID-Wert wird generiert, indem die ID-Werte der einzelnen übergeordneten Benennungscontainer mit dem ID-Wert des Steuerelements verkettet werden In Datenbindungsszenarios, in denen mehrere Instanzen eines Steuerelements gerendert werden, wird vor dem ID-Wert des Steuerelements ein inkrementierender Wert eingefügt. Die einzelnen Segmente werden durch einen Unterstrich (_) getrennt. Dieser Algorithmus ist der einzige, der in niedrigeren Versionen als ASP.NET 4 verfügbar war.

Inherit 0

Das Steuerelement erbt die ClientIDMode-Einstellung seines NamingContainer-Steuerelements.

Predictable 2

Dieser Algorithmus wird für Steuerelemente in datengebundenen Steuerelementen verwendet. Der ClientID-Wert wird generiert, indem der ClientID-Wert des übergeordneten Benennungscontainers mit dem ID-Wert des Steuerelements verkettet wird. Wenn es sich bei dem Steuerelement um ein datengebundenes Steuerelement handelt, das mehrere Zeilen generiert, wird der Wert des in der ClientIDRowSuffix-Eigenschaft angegebenen Datenfelds am Ende hinzugefügt. Für das GridView-Steuerelement können mehrere Datenfelder angegeben werden. Wenn die ClientIDRowSuffix-Eigenschaft leer ist, wird am Ende anstelle eines Datenfeldwerts eine laufende Nummer hinzugefügt. Die einzelnen Segmente werden durch einen Unterstrich (_) getrennt.

Static 3

Der ClientID-Wert wird auf den Wert der ID-Eigenschaft festgelegt. Wenn es sich bei dem Steuerelement um einen Benennungscontainer handelt, ist das Steuerelement für alle enthaltenen Steuerelemente das oberste Element in der Hierarchie von Benennungscontainern.

Beispiele

Das folgende Beispiel zeigt Label Steuerelemente, die in einem ListView Steuerelement enthalten sind. ListView Im Steuerelement ist die ClientIDMode -Eigenschaft auf Vorhersagbar festgelegt, und die ClientIDRowSuffix -Eigenschaft ist auf ProductIDfestgelegt. Über das Clientskript können Sie basierend auf dem Wert der Instanz, auf die ProductID Sie zugreifen möchten, auf eine bestimmte Instanz von zugreifenLabel.

In diesem Beispiel wird HTML mit drei ProductIDLabel Steuerelementen erstellt. Wenn die Seite ausgeführt wird, sind die IDs für die Steuerelemente wie folgt:

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

Hinweise

Sie verwenden die ClientIDMode Enumeration, wenn Sie die ClientIDMode -Eigenschaft für ein Steuerelement festlegen. Der Wert, den Sie der ClientIDMode -Eigenschaft zuweisen, bestimmt, wie die ClientID Eigenschaft generiert wird. Der Wert der ClientID -Eigenschaft wird als id Attribut im Markup gerendert, und es ist der Wert, den Sie für den Zugriff auf das Steuerelement über das Clientskript verwenden. Der Wert, den Sie der ClientIDMode -Eigenschaft zuweisen, wirkt sich nicht auf die ID Eigenschaft des Serversteuerelements aus, nur auf das id Attribut des entsprechenden HTML-Elements.

Der Standardwert von ClientIDMode für eine Seite ist Vorhersagbar. Der Standardwert von ClientIDMode für ein Steuerelement ist Inherit.

Da der Standardwert für Steuerelemente Erben ist, ist der Standardgenerierungsmodus Vorhersagbar. (Wenn Sie jedoch Visual Studio zum Konvertieren eines Webprojekts in ASP.NET 4 aus einer früheren Version verwenden, legt Visual Studio die Standardeinstellung der Website automatisch auf AutoID in der Web.config-Datei fest.)

Sie können den ClientIDMode Wert für alle Seiten einer Website festlegen, indem Sie das pages-Element in der Web.config-Datei der Website festlegen. Sie können den ClientIDMode Wert für eine Seite in der @ Page-Direktive festlegen.

Weitere Informationen finden Sie unter Steuerelementidentifikation in Web Forms.

Gilt für:

Weitere Informationen