Teilen über


Control.ClientIDMode Eigenschaft

Definition

Ruft den Algorithmus ab, mit dem der Wert der ClientID-Eigenschaft generiert wird, oder legt diesen fest.

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

Eigenschaftswert

Ein Wert, der angibt, wie die ClientID-Eigenschaft generiert wird. Der Standardwert ist Inherit.

Attribute

Beispiele

Das folgende Beispiel zeigt Label Steuerelemente, die in einem ListView -Steuerelement enthalten sind. ListView Im -Steuerelement wird die ClientIDMode -Eigenschaft auf Predictable und die ClientIDRowSuffix -Eigenschaft auf ProductIDfestgelegt. Im gerenderten HTML-Code werden dadurch drei span Elemente erstellt, die drei ProductIDLabel Steuerelementen entsprechen. Wenn die Seite ausgeführt wird, werden die id Attribute für die span Elemente auf die folgenden Werte festgelegt:

  • 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

ASP.NET stellt mehrere Algorithmen zum Generieren des ClientID Eigenschaftswerts bereit. Sie wählen den Algorithmus aus, der für ein Steuerelement verwendet werden soll, indem Sie dessen ClientIDMode Eigenschaft festlegen. Die Algorithmen werden durch die ClientIDMode Enumerationswerte identifiziert, die in der folgenden Tabelle aufgeführt sind.

Wert BESCHREIBUNG
AutoID 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 wurde in Versionen von ASP.NET vor ASP.NET 4 verwendet.
Static 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.
Predictable 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 sequenzielle Zahl hinzugefügt. Diese Zahl beginnt bei 0 (null) und wird für jede Zeile um 1 erhöht. Die einzelnen Segmente werden durch einen Unterstrich (_) getrennt.
Inherit Das Steuerelement erbt die ClientIDMode-Einstellung seines NamingContainer-Steuerelements.

Der Standardwert für ClientIDMode eine Seite ist Predictable. Der Standardwert für ClientIDMode ein Steuerelement ist Inherit. Da die Standardeinstellung für Steuerelemente ist, ist InheritPredictableder Standardgenerierungsmodus . (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.)

Weitere Informationen finden Sie unter Steuerelementidentifikation in Web Forms.

Gilt für:

Weitere Informationen