Control.ClientIDMode Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen des Algorithmus, der zum Generieren des Werts der ClientID Eigenschaft verwendet wird.
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 lautet Inherit.
- Attribute
Beispiele
Das folgende Beispiel zeigt Label Steuerelemente, die in einem ListView Steuerelement enthalten sind. Auf dem ListView Steuerelement wird die ClientIDMode Eigenschaft festgelegt Predictable , und die ClientIDRowSuffix Eigenschaft wird auf ProductID. Im gerenderten HTML-Code werden 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_1ListView1_ProductIDLabel_34ListView1_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 aus, welcher Algorithmus 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 jedes übergeordneten Benennungscontainers mit dem ID Wert des Steuerelements verkettet werden. In Datenbindungsszenarien, in denen mehrere Instanzen eines Steuerelements gerendert werden, wird ein inkrementeller Wert vor dem Wert des Steuerelements ID eingefügt. Jedes Segment wird durch ein Unterstrichzeichen (_) getrennt. Dieser Algorithmus wurde in Versionen von ASP.NET früher als 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, wird das Steuerelement als oberer Rand der Hierarchie von Benennungscontainern für alle darin enthaltenen Steuerelemente verwendet. |
| Predictable | Dieser Algorithmus wird für Steuerelemente verwendet, die sich in datengebundenen Steuerelementen befinden. 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 Null und wird für jede Zeile um 1 erhöht. Jedes Segment wird durch ein Unterstrichzeichen (_) getrennt. |
| Inherit | Das Steuerelement erbt die ClientIDMode Einstellung des NamingContainer Steuerelements. |
Der Standardwert ClientIDMode für eine Seite lautet Predictable. Der Standardwert für ClientIDMode ein Steuerelement lautet Inherit. Da die Standardeinstellung für Steuerelemente lautet, ist InheritPredictableder Standardgenerierungsmodus . (Wenn Sie jedoch Visual Studio zum Konvertieren eines Webprojekts in ASP.NET 4 aus einer früheren Version verwenden, legt Visual Studio die Website in AutoID der datei Web.config automatisch fest.)
Weitere Informationen finden Sie unter ASP.NET Web Server Control Identification.