ClientIDMode Перечисление

Определение

Указывает способ формирования платформой ASP.NET свойства ClientID для элемента управления, к которому возможен доступ из клиентского скрипта.

public enum class ClientIDMode
public enum ClientIDMode
type ClientIDMode = 
Public Enum ClientIDMode
Наследование
ClientIDMode

Поля

AutoID 1

Значение свойства ClientID формируется путем сцепления значений свойства ID каждого из родительских контейнеров именования со значением свойства ID элемента управления. В сценариях с привязкой данных, где отрисовывается несколько экземпляров элемента управления, перед значением свойства ID элемента управления вставляется значение счетчика. Все сегменты разделяются символом подчеркивания (_). Это был единственный алгоритм, доступный в версиях ASP.NET ранее ASP.NET 4.

Inherit 0

Элемент управления наследует значение ClientIDMode от элемента управления NamingContainer.

Predictable 2

Этот алгоритм используется для элементов управления, содержащихся в элементах управления с привязкой к данным. Значение свойства ClientID формируется путем сцепления значения свойства ClientID родительского контейнера именования со значением свойства ID элемента управления. Если элемент управления представляет собой элемент управления с привязкой к данным, формирующий несколько строк, в конец идентификатора добавляется значение поля данных, указанного в свойстве ClientIDRowSuffix. Для элемента управления GridView может быть указано несколько полей данных. Если свойство ClientIDRowSuffix является пустым, в конец идентификатора вместо значения поля данных добавляется порядковый номер. Все сегменты разделяются символом подчеркивания (_).

Static 3

Значение свойства ClientID задается равным значению свойства ID. Если элемент управления представляет собой контейнер именования, он выступает в качестве верхнего уровня иерархии контейнеров именования для всех элементов управления, которые он содержит.

Примеры

В следующем примере показаны Label элементы управления, содержащиеся в ListView элементе управления. В ListView элементе управления ClientIDMode свойство имеет значение прогнозируемое, а ClientIDRowSuffix свойству — значение ProductID . Из клиентского скрипта можно получить доступ к определенному экземпляру в Label на основе ProductID значения экземпляра, к которому вы пытаетесь получить доступ.

В этом примере создается HTML с тремя ProductIDLabel элементами управления. При запуске страницы идентификаторы элементов управления будут следующими:

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

Комментарии

ClientIDModeПеречисление используется при задании ClientIDMode свойства для элемента управления. Значение, присваиваемое ClientIDMode свойству, определяет способ ClientID создания свойства. Значение ClientID Свойства отображается как id атрибут в разметке и является значением, используемым для доступа к элементу управления из клиентского скрипта. Значение, присваиваемое ClientIDMode свойству, не влияет на ID свойство серверного элемента управления, а только на id атрибут соответствующего HTML-элемента.

Значение по умолчанию ClientIDMode для страницы является прогнозируемым. Значение по умолчанию ClientIDMode для элемента управления — Inherit.

Поскольку по умолчанию для элементов управления наследуется, режим создания по умолчанию является прогнозируемым. (однако при использовании Visual Studio для преобразования веб-проекта в ASP.NET 4 из более ранней версии Visual Studio автоматически устанавливает для сайта по умолчанию значение AutoID в файле Web.config.)

Можно задать ClientIDMode значение для всех страниц веб-сайта, задав элемент pages в файле Web.config сайта. Можно задать ClientIDMode значение для страницы в директиве @ Page .

Дополнительные сведения см. в разделе Идентификация элементов управления Web Forms.

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

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