Control.ClientIDMode Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает алгоритм, используемый для создания значения свойства 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. Значение по умолчанию — Inherit.
- Атрибуты
Примеры
В следующем примере показаны Label элементы управления, содержащиеся в элементе ListView управления . В элементе ListView управления свойству ClientIDMode присваивается значение Predictable , а свойству ClientIDRowSuffix — значение ProductID
. В отрисованном 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, предшествующих ASP.NET 4. |
Static | Значение свойства ClientID задается равным значению свойства ID. Если элемент управления представляет собой контейнер именования, он выступает в качестве верхнего уровня иерархии контейнеров именования для всех элементов управления, которые он содержит. |
Predictable | Этот алгоритм используется для элементов управления, содержащихся в элементах управления с привязкой к данным. Значение свойства ClientID формируется путем сцепления значения свойства ClientID родительского контейнера именования со значением свойства ID элемента управления. Если элемент управления представляет собой элемент управления с привязкой к данным, формирующий несколько строк, в конец идентификатора добавляется значение поля данных, указанного в свойстве ClientIDRowSuffix. Для элемента управления GridView может быть указано несколько полей данных. ClientIDRowSuffix Если свойство пустое, в конце добавляется последовательное число, а не значение поля данных. Это число начинается с нуля и увеличивается на 1 для каждой строки. Все сегменты разделяются символом подчеркивания (_). |
Inherit | Элемент управления наследует значение ClientIDMode от элемента управления NamingContainer. |
Значение по умолчанию ClientIDMode для страницы — Predictable. Значение по умолчанию ClientIDMode для элемента управления — Inherit. Так как по умолчанию для элементов управления используется Inheritрежим Predictableсоздания по умолчанию . (Однако если вы используете Visual Studio для преобразования веб-проекта в ASP.NET 4 из более ранней версии, Visual Studio автоматически устанавливает для сайта значение по умолчанию AutoID в файле Web.config.)
Дополнительные сведения см. в разделе Идентификация элементов управления Web Forms.
Применяется к
См. также раздел
- Идентификация элемента управления ASP.NET
- Практическое руководство. Управление доступом из JavaScript по идентификатору
- Пошаговое руководство. Упрощение доступа к элементам управления Data-Bound из JavaScript
- Пошаговое руководство. Упрощение доступа к элементам управления, расположенным в пользовательских веб-элементах управления, из JavaScript