Поделиться через


Элемент device для элемента mobileControls (схема параметров ASP.NET)

Обновлен: Ноябрь 2007

Определяет новый набор адаптеров, который сопоставляет элементы управления ASP.NET для мобильных приложений соответствующим адаптерам в разделах Элемент system.web (схема параметров ASP.NET) и <mobileControls> файла конфигурации Web.config.

Элемент configuration (схема общих параметров)
  Элемент system.web (схема параметров ASP.NET)
    Элемент mobileControls (схема параметров ASP.NET)
      Элемент device для элемента mobileControls (схема параметров ASP.NET)

 <device name="String"
          inheritsFrom="String" "
          pageAdapter="String"
          predicateClass="String"
          predicateMethod="String>
     <control.../> </device>

Атрибуты и элементы

В следующих разделах описываются атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут

Описание

name

Обязательный атрибут типа String.

Задает уникальное имя, которое должно идентифицировать набор адаптеров устройства.

inheritsFrom

Необязательный атрибут типа String.

Задает набор адаптеров устройства, от которого наследуется этот набор. Заданный набор адаптеров устройства может присутствовать в том же разделе <mobileControls> или в разделе <mobileControls> файла конфигурации более высокого уровня.

pageAdapter

Необязательный атрибут типа String.

Определяет тип класса адаптера страницы для набора адаптеров. Заданный класс должен реализовывать интерфейс IPageAdapter. Имя должно соответствовать стандартам платформы .NET Framework для полных имен типа.

ASP.NET ищет тип в заданной сборке. Если набор адаптеров наследуется от другого набора адаптеров, атрибут pageAdapter является необязательным и по умолчанию принимает значение родительского набора.

predicateClass

Необязательный атрибут типа String.

Задает тип класса, который передает предикат фильтра. Имя типа класса должно соответствовать стандартам платформы .NET Framework для полных имен типа.

ASP.NET ищет тип в заданной сборке. Если набор адаптеров наследуется от типа, атрибут predicateClass является необязательным и по умолчанию принимает значение родительского набора.

predicateMethod

Необязательный атрибут типа String.

Задает метод, который передает предикат фильтра. Метод должен быть статическим и иметь одну из следующих подписей:

static bool EvaluatorMethod(HttpContext context)

Если набор адаптеров наследуется от другого набора адаптеров, атрибут predicateMethod является необязательным и по умолчанию принимает значение родительского набора.

Дочерние элементы

Элемент

Описание

control

Сопоставляет элемент управления ASP.NET для мобильных устройств с адаптером конкретного устройства.

Родительские элементы

Элемент

Описание

configuration

Обязательный корневой элемент любого файла конфигурации, используемого средой CLR и приложениями платформы .NET Framework.

system.web

Задает корневой элемент для параметров конфигурации ASP.NET в конфигурационном файле. Содержит элементы, настраивающие веб-приложения ASP.NET и управляющие их поведением.

mobileControls

Определяет набор адаптера, который сопоставляет элементы управления ASP.NET для мобильных устройств соответствующим адаптерам в разделе Элемент system.web (схема параметров ASP.NET) файла Web.config.

Заметки

Если раздел <device> содержит атрибут inheritsFrom, объявлять атрибуты predicateClass, predicateMethod или pageAdapter необязательно. Вместо этого можно унаследовать эти атрибуты набора адаптеров устройства из определения родительского набора.

ms228297.alert_note(ru-ru,VS.90).gifПримечание.

Несмотря на то, что эти атрибуты являются необязательными, при необходимости можно определить их.

В набор адаптеров можно поместить любое число разделов или элементов управления, каждый из которых предоставляет сопоставление адаптера для конкретного элемента управления (класс, реализующий IControlAdapter).

Конфигурация по умолчанию

В корневом файле Web.config в .NET Framework версии 2.0 по умолчанию задан следующий элемент <mobileControls>.

<mobileControls sessionStateHistorySize="6" 
  cookielessDataDictionaryType="System.Web.Mobile.CookielessData">
  <device name="XhtmlDeviceAdapters" 
    predicateClass="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlPageAdapter" 
    predicateMethod="DeviceQualifies" 
    pageAdapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlPageAdapter">
    <control name="System.Web.UI.MobileControls.Panel" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlPanelAdapter" />
    <control name="System.Web.UI.MobileControls.Form" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlFormAdapter" />
    <control name="System.Web.UI.MobileControls.TextBox" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlTextBoxAdapter" />
    <control name="System.Web.UI.MobileControls.Label" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlLabelAdapter" />
    <control name="System.Web.UI.MobileControls.LiteralText" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlLiteralTextAdapter" />
    <control name="System.Web.UI.MobileControls.Link" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlLinkAdapter" />
    <control name="System.Web.UI.MobileControls.Command" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlCommandAdapter" />
    <control name="System.Web.UI.MobileControls.PhoneCall" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlPhoneCallAdapter" />
    <control name="System.Web.UI.MobileControls.List" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlListAdapter" />
    <control name="System.Web.UI.MobileControls.SelectionList" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlSelectionListAdapter" />
    <control name="System.Web.UI.MobileControls.ObjectList" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlObjectListAdapter" />
    <control name="System.Web.UI.MobileControls.Image" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlImageAdapter" />
    <control name="System.Web.UI.MobileControls.ValidationSummary" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlValidationSummaryAdapter" />
    <control name="System.Web.UI.MobileControls.Calendar" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlCalendarAdapter" />
    <control name="System.Web.UI.MobileControls.TextView" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlTextViewAdapter" />
    <control name="System.Web.UI.MobileControls.MobileControl" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlControlAdapter" />
    <control name="System.Web.UI.MobileControls.BaseValidator" 
      adapter="System.Web.UI.MobileControls.Adapters.XhtmlAdapters.XhtmlValidatorAdapter" />
  </device>

  <device name="HtmlDeviceAdapters" 
    predicateClass="System.Web.UI.MobileControls.Adapters.HtmlPageAdapter" 
    predicateMethod="DeviceQualifies" 
    pageAdapter="System.Web.UI.MobileControls.Adapters.HtmlPageAdapter">
    <control name="System.Web.UI.MobileControls.Panel" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlPanelAdapter" />
    <control name="System.Web.UI.MobileControls.Form" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlFormAdapter" />
    <control name="System.Web.UI.MobileControls.TextBox" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlTextBoxAdapter" />
    <control name="System.Web.UI.MobileControls.Label" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlLabelAdapter" />
    <control name="System.Web.UI.MobileControls.LiteralText" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlLiteralTextAdapter" />
    <control name="System.Web.UI.MobileControls.Link" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlLinkAdapter" />
    <control name="System.Web.UI.MobileControls.Command" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlCommandAdapter" />
    <control name="System.Web.UI.MobileControls.PhoneCall" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlPhoneCallAdapter" />
    <control name="System.Web.UI.MobileControls.List" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlListAdapter" />
    <control name="System.Web.UI.MobileControls.SelectionList" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlSelectionListAdapter" />
    <control name="System.Web.UI.MobileControls.ObjectList" 
        adapter="System.Web.UI.MobileControls.Adapters.HtmlObjectListAdapter" />
    <control name="System.Web.UI.MobileControls.Image" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlImageAdapter" />
    <control name="System.Web.UI.MobileControls.BaseValidator" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlValidatorAdapter" />
    <control name="System.Web.UI.MobileControls.ValidationSummary" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlValidationSummaryAdapter" />
    <control name="System.Web.UI.MobileControls.Calendar" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlCalendarAdapter" />
    <control name="System.Web.UI.MobileControls.TextView" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlTextViewAdapter" />
    <control name="System.Web.UI.MobileControls.MobileControl" 
      adapter="System.Web.UI.MobileControls.Adapters.HtmlControlAdapter" />
  </device>

  <device name="UpWmlDeviceAdapters" 
    inheritsFrom="WmlDeviceAdapters" 
    predicateClass="System.Web.UI.MobileControls.Adapters.UpWmlPageAdapter" 
    predicateMethod="DeviceQualifies" 
    pageAdapter="System.Web.UI.MobileControls.Adapters.UpWmlPageAdapter">
  </device>

  <device name="WmlDeviceAdapters" 
    predicateClass="System.Web.UI.MobileControls.Adapters.WmlPageAdapter" 
    predicateMethod="DeviceQualifies"
    pageAdapter="System.Web.UI.MobileControls.Adapters.WmlPageAdapter">
    <control name="System.Web.UI.MobileControls.Panel" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlPanelAdapter" />
    <control name="System.Web.UI.MobileControls.Form" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlFormAdapter" />
    <control name="System.Web.UI.MobileControls.TextBox" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlTextBoxAdapter" />
    <control name="System.Web.UI.MobileControls.Label" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlLabelAdapter" />
    <control name="System.Web.UI.MobileControls.LiteralText" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlLiteralTextAdapter" />
    <control name="System.Web.UI.MobileControls.Link" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlLinkAdapter" />
    <control name="System.Web.UI.MobileControls.Command" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlCommandAdapter" />
    <control name="System.Web.UI.MobileControls.PhoneCall" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlPhoneCallAdapter" />
    <control name="System.Web.UI.MobileControls.List" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlListAdapter" />
    <control name="System.Web.UI.MobileControls.SelectionList" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlSelectionListAdapter" />
    <control name="System.Web.UI.MobileControls.ObjectList" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlObjectListAdapter" />
    <control name="System.Web.UI.MobileControls.Image" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlImageAdapter" />
    <control name="System.Web.UI.MobileControls.BaseValidator" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlValidatorAdapter" />
    <control name="System.Web.UI.MobileControls.ValidationSummary" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlValidationSummaryAdapter" />
    <control name="System.Web.UI.MobileControls.Calendar" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlCalendarAdapter" />
    <control name="System.Web.UI.MobileControls.TextView" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlTextViewAdapter" />
    <control name="System.Web.UI.MobileControls.MobileControl" 
      adapter="System.Web.UI.MobileControls.Adapters.WmlControlAdapter" />
  </device>

  <device name="ChtmlDeviceAdapters" 
    inheritsFrom="HtmlDeviceAdapters" 
    predicateClass="System.Web.UI.MobileControls.Adapters.ChtmlPageAdapter"
    predicateMethod="DeviceQualifies" 
    pageAdapter="System.Web.UI.MobileControls.Adapters.ChtmlPageAdapter">
    <control name="System.Web.UI.MobileControls.Form" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlFormAdapter" />
    <control name="System.Web.UI.MobileControls.Calendar" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlCalendarAdapter" />
    <control name="System.Web.UI.MobileControls.Image" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlImageAdapter" />
    <control name="System.Web.UI.MobileControls.TextBox" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlTextBoxAdapter" />
    <control name="System.Web.UI.MobileControls.SelectionList" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlSelectionListAdapter" />
    <control name="System.Web.UI.MobileControls.Command" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlCommandAdapter" />
    <control name="System.Web.UI.MobileControls.PhoneCall" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlPhoneCallAdapter" />
    <control name="System.Web.UI.MobileControls.Link" 
      adapter="System.Web.UI.MobileControls.Adapters.ChtmlLinkAdapter" />
  </device>
</mobileControls>

Пример

В следующем примере демонстрируется элемент управления, который наследуется от класса Form и дает возможность инициировать события или выполнять другие действия после заданного интервала таймера.

<mobileControls>
    <device name="PortalHtmlDeviceAdapters" inheritsFrom="HtmlDeviceAdapters">
        <control name="ASPNetPortal.MobileControls.TabbedPanel, Portal" adapter="ASPNetPortal.MobileControls.HtmlTabbedPanelAdapter,Portal" />
        <control name="ASPNetPortal.MobileControls.LinkCommand, Portal" adapter="ASPNetPortal.MobileControls.HtmlLinkCommandAdapter,Portal" />
    </device>
    <device name="PortalChtmlDeviceAdapters" inheritsFrom="ChtmlDeviceAdapters">
        <control name="ASPNetPortal.MobileControls.TabbedPanel, Portal" adapter="ASPNetPortal.MobileControls.ChtmlTabbedPanelAdapter,Portal" />
    </device>
    <device name="PortalWmlDeviceAdapters" inheritsFrom="WmlDeviceAdapters">
        <control name="ASPNetPortal.MobileControls.TabbedPanel, Portal" adapter="ASPNetPortal.MobileControls.WmlTabbedPanelAdapter,Portal" />
    </device>
</mobileControls>

Сведения об элементе

Configuration Section Handler

System.Web.UI.MobileControls.MobileControlsSection

Configuration Member

SystemWebSectionGroup.MobileControls

Configurable Locations

Machine.config

Файл Web.config корневого уровня

Файл Web.config уровня приложения

Файл Web.config уровня виртуального или физического каталога

Requirements

IIS 5.0, IIS 5.1 или IIS 6.0

..NET Framework версии 1.1 или 2.0

Visual Studio 2003 или Visual Studio 2005

См. также

Задачи

Практическое руководство. Настройка отдельных каталогов с помощью параметров расположения

Пошаговое руководство. Отключение параметров конфигурации ASP.NET

Основные понятия

Иерархия и наследование файла конфигурации ASP.NET

Настройка обеспечения безопасности ASP.NET

Сценарии конфигурации ASP.NET

Ссылки

Элемент system.web (схема параметров ASP.NET)

Элемент configuration (схема общих параметров)

Элемент control для элемента device для элемента mobileControls (схема параметров ASP.NET)

Элемент deviceFilters (схема параметров ASP.NET)

MobileControlsSectionHandler

System.Configuration

System.Web.Configuration

Другие ресурсы

Использование фильтров устройств

Веб-страницы ASP.NET для мобильных устройств

Создание веб-страниц ASP.NET для мобильных устройств

Общие параметры конфигурации (ASP.NET)

Параметры конфигурации ASP.NET

Администрирование веб-узлов ASP.NET

Файлы конфигурации ASP.NET

Конфигурационный интерфейс API ASP.NET