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 wird die ClientIDMode -Eigenschaft auf Vorhersagbar und die ClientIDRowSuffix -Eigenschaft auf ProductIDfestgelegt. Über das Clientskript können Sie basierend auf dem Wert der Label Instanz, auf die ProductID Sie zugreifen möchten, auf eine bestimmte Instanz von zugreifen.

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 er 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 für ClientIDMode eine Seite ist Vorhersagbar. Der Standardwert für ClientIDMode ein Steuerelement ist Inherit.

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

Sie können den ClientIDMode Wert für alle Seiten in 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