Control.ClientIDMode 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定用來產生 ClientID 屬性值的演算法。
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
屬性值
值,指定如何產生 ClientID 屬性 (Property)。 預設為 Inherit。
- 屬性
範例
下列範例顯示 Label 控件中包含的 ListView 控制項。 在控件上ListView,屬性會設定為 Predictable ,而 ClientIDRowSuffix 屬性會設定為 ProductID
ClientIDMode 。 在轉譯的 HTML 中,這會建立三個對應至三span
ProductIDLabel
個控件的元素。 當頁面執行時, id
元素的屬性 span
會設定為下列值:
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>
備註
ASP.NET 提供多個演演算法來產生 ClientID 屬性值。 您可以藉由設定控件的 屬性,來選取要用於控件的 ClientIDMode 演算法。 演算法是由 ClientIDMode 下表所列的列舉值所識別。
值 | 描述 |
---|---|
AutoID | ClientID 值是透過串連每個父命名容器的 ID 值與控制項的 ID 值產生。 在呈現控制項之多個執行個體的資料繫結情節中,遞增值會插入控制項之 ID 值的前面。 各區段是以底線字元 (_) 分隔。 此演算法用於早於 ASP.NET 4 的 ASP.NET 版本。 |
Static | ClientID 值設定為 ID 屬性的值。 如果控制項是命名容器,則對於其包含的所有控制項而言,會用來做為命名容器之階層架構的最上層。 |
Predictable | 這個演算法用於資料繫結控制項中的控制項。 ClientID 值是透過串連父命名容器的 ClientID 值與控制項的 ID 值產生。 如果控制項是資料繫結控制項,並且會產生多個資料列,則 ClientIDRowSuffix 屬性中指定之資料欄位的值會加入結尾處。 針對 GridView 控制項,可以指定多個資料欄位。 ClientIDRowSuffix如果屬性是空白的,則會在結尾加入序號,而不是數據域值。 這個數位從零開始,而且會針對每個數據列遞增 1。 各區段是以底線字元 (_) 分隔。 |
Inherit | 此控制項會繼承其 ClientIDMode 控制項的 NamingContainer 設定。 |
頁面的 ClientIDMode 預設值為 Predictable。 控制元件的 ClientIDMode 預設值為 Inherit。 因為控制件的預設值是 Inherit,所以預設產生模式為 Predictable。 不過, (,如果您使用Visual Studio將Web專案轉換成舊版的 ASP.NET 4,Visual Studio 會自動將網站預設值設定為 AutoID Web.config file.)
如需詳細資訊,請參閱 ASP.NET 網頁伺服器控制項識別。