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 элементам управления. При запуске страницы атрибутам idspan элементов присваиваются следующие значения:

  • 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.

Применяется к

См. также раздел