Provides a default control adapter for rendering mobile controls in XHTML markup.
Assembly: System.Web.Mobile (in System.Web.Mobile.dll)
This class provides a base mobile control adapter that renders a control and each of its children in XHTML markup for mobile devices. It also provides helper methods and common properties for derived XHTML mobile control adapters.
Control adapters are components that override certain Control class methods and events to allow browser-specific or markup-specific handling. Much of the adaptability in rendering behavior is encapsulated in the XhtmlTextWriter class. If you are considering whether to build your own control adapter, keep in mind that a single adapter can be used to override a number of browser class behaviors. Alternatively, by including the desired adaptability in a class derived from the XhtmlMobileTextWriter class, you might eliminate the need to use a control adapter.
An adapter for a specific control class applies to all controls that inherit from that class, unless more specialized adapters are present. For example, the XhtmlValidatorAdapter class is used to validate all mobile controls for devices that require or can display XHTML markup.
During processing, the .NET Framework intercepts calls to the methods of a control that are specific to the current target. If a control adapter is associated with the control, the .NET Framework calls the associated adapter methods.
Some properties of a control govern the way it displays across multiple secondary pages for a mobile device. These page are collectively known as secondary UI. The SecondaryUIMode property can be used to define which page will be displayed. The ExitSecondaryUIMode method can be used to remove any secondary UI settings.Notes to Inheritors:
When you inherit from the class, name your adapter for a given control type and markup language in the pattern MarkupControlTypeAdapter (for example, XhtmlTextBoxAdapter). Adapters for a control that provides XHTML markup should be implemented in the System.Web.UI.MobileControls.Adapters.XhtmlAdapters namespace.
Any specialized adapters should be defined for the specialized control under each of the device nodes in the configuration .browser files.
A properly implemented control should not assume that an adapter is attached, or that the attached adapter implements a specific interface. Instead, it should check for these conditions.
A number of conditional rendering methods allow for such conditions as secondary UI and for display devices that require line breaks after every block or after every inline control. Examples of these conditional methods are ConditionalSetPendingBreak and ConditionalEnterLayout. These methods work for a given device regardless of the control being rendered. It is unlikely you would need to override these methods when creating a new control adapter based on this class. At a minimum, you would need to override the Render methods.
Device filtering is required to use a specific adapter for a server control. For more information about device filtering, see Architectural Overview of Adaptive Control Behavior and ASP.NET Device Filtering Overview.
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.