ControlAdapter Clase
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

ControlAdapter (Clase)

 

Personaliza la representación del control derivado al que está asociado el adaptador, para modificar el marcado o el comportamiento predeterminados para exploradores concretos, y es la clase base de la que heredan todos los adaptadores de control.

Espacio de nombres:   System.Web.UI.Adapters
Ensamblado:  System.Web (en System.Web.dll)


public abstract class ControlAdapter

NombreDescripción
System_CAPS_protmethodControlAdapter()

Esta API admite la infraestructura de product y no está pensada para usarse directamente desde su código. Inicializa una nueva instancia de la clase ControlAdapter.

NombreDescripción
System_CAPS_protpropertyBrowser

Obtiene una referencia a las posibilidades del explorador del cliente que realiza la solicitud HTTP actual.

System_CAPS_protpropertyControl

Obtiene una referencia al control al que está asociado este adaptador de control.

System_CAPS_protpropertyPage

Obtiene una referencia a la página donde reside el control asociado a este adaptador.

System_CAPS_protpropertyPageAdapter

Obtiene una referencia al adaptador de la página donde reside el control asociado.

NombreDescripción
System_CAPS_protmethodBeginRender(HtmlTextWriter)

Se le llama antes de la representación de un control.En una clase de adaptador derivada, genera etiquetas de apertura requeridas por un destino concreto pero que no son necesarias para los exploradores de HTML.

System_CAPS_protmethodCreateChildControls()

Crea los controles secundarios específicos del destino para un control compuesto.

System_CAPS_protmethodEndRender(HtmlTextWriter)

Se le llama después de la representación de un control.En una clase de adaptador derivada, genera etiquetas de cierre requeridas por un destino concreto pero que no son necesarias para los exploradores de HTML.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object.)

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object.)

System_CAPS_pubmethodGetHashCode()

Sirve como una función hash para un tipo en particular. (Heredado de Object.)

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual. (Heredado de Object.)

System_CAPS_protmethodLoadAdapterControlState(Object)

Carga información de estado del control de adaptador, guardada por SaveAdapterControlState durante una solicitud anterior, en la página donde reside el control asociado a este adaptador de control.

System_CAPS_protmethodLoadAdapterViewState(Object)

Carga información del estado de la vista del adaptador, guardada por SaveAdapterViewState durante una solicitud anterior, en la página donde reside el control asociado a este adaptador de control.

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual. (Heredado de Object.)

System_CAPS_protmethodOnInit(EventArgs)

Reemplaza el método OnInit para el control asociado.

System_CAPS_protmethodOnLoad(EventArgs)

Reemplaza el método OnLoad para el control asociado.

System_CAPS_protmethodOnPreRender(EventArgs)

Reemplaza el método OnPreRender para el control asociado.

System_CAPS_protmethodOnUnload(EventArgs)

Reemplaza el método OnUnload para el control asociado.

System_CAPS_protmethodRender(HtmlTextWriter)

Genera el marcado específico del destino para el control al que está asociado el adaptador de control.

System_CAPS_protmethodRenderChildren(HtmlTextWriter)

Genera el marcado específico del destino para los controles secundarios en un control compuesto al que está asociado el adaptador de control.

System_CAPS_protmethodSaveAdapterControlState()

Guarda información de estado de control para el adaptador de control.

System_CAPS_protmethodSaveAdapterViewState()

Guarda información del estado de vista para el adaptador de control.

System_CAPS_pubmethodToString()

Retorna una cadena que representa al objeto actual. (Heredado de Object.)

Los adaptadores de control son componentes que reemplazan a ciertos métodos y eventos de la clase Control en su ciclo de vida de ejecución para permitir un control específico del marcado o el explorador..NET Framework asigna un único adaptador de control derivado a un objeto Control para cada solicitud de cliente.

Un adaptador modifica un control para un explorador concreto o una clase concreta de exploradores o bien actúa como filtro arbitrario en alguna función.Normalmente el adaptador está definido por el lenguaje de marcado que utiliza el explorador (por ejemplo, XHTML o HTML 3.2).Gran parte de la adaptabilidad del comportamiento de representación se puede encapsular en las clases especializadas que se derivan de la clase HtmlTextWriter.Por consiguiente, es probable que pueda utilizarse un mismo adaptador para varios comportamientos de clase de explorador o que la inclusión de la adaptabilidad en las clases HtmlTextWriter pueda hacer innecesario el uso de un adaptador de control.

Un adaptador de la clase de un control se aplica a todos los controles que heredan de esa clase, a menos que estén presentes adaptadores más especializados.Por ejemplo, puede utilizarse un adaptador de la clase BaseValidator para todos los objetos Validator.

Los adaptadores normalmente no heredan directamente de la clase ControlAdapter, sino de una de las clases base de adaptadores específicas del destino que proporcionan funcionalidades adicionales específicas del tipo de control y el explorador de destino o la representación particular requerida.

Los controles no requieren necesariamente un adaptador.Si los controles se extienden mediante composición, generalmente son suficientes los adaptadores de control secundario.

Cada control tiene asignaciones explícitas a adaptadores a través de los archivos de definición de explorador.De este modo, cualquier acceso a la propiedad Control.Adapter utiliza el objeto HttpBrowserCapabilities extraído de los archivos de definición de explorador con el fin de realizar la búsqueda de la asignación del adaptador que se va a controlar.

Durante el procesamiento, .NET Framework intercepta las llamadas a los métodos reemplazables de un control que podría ser específico del destino.Si está asociado un adaptador de control, .NET Framework llama a los métodos de adaptadores asociados.

El adaptador realiza la representación del control por medio del método Render.Si se reemplaza, Render no debería llamar a la implementación de la clase base, puesto que, al hacerlo, se llamaría otra vez al método Control.Render.Esto podría hacer que la representación se repitiera dos veces, una vez por el adaptador y otra por el control.

El método base Render vuelve a llamar al método Control.Render del control.Por tanto, si reemplaza Render, no llame a la implementación de la clase base a menos que la representación que implemente sea adicional a la proporcionada por Control.Render del control.

El programador debe garantizar que .NET Framework realice la interceptación para los adaptadores de los controles secundarios.Para ello, desde su reemplazo de Render, llame al método base RenderChildren, que llama al método Control.RenderChildren del control.

El control llamará a los métodos BeginRender y EndRender, inmediatamente antes y después (respectivamente) de que llame al método Render.Si las únicas tareas de representación específicas del explorador que se requieren son la representación previa y la representación posterior, el uso de BeginRender y EndRender podría hacer innecesario el reemplazo de Render.El comportamiento predeterminado de los métodos BeginRender y EndRender llama a los métodos correspondientes de HtmlTextWriter.

Para mantener su propia información de estado, un adaptador de control puede reemplazar a los métodos SaveAdapterControlState, LoadAdapterControlState, SaveAdapterViewState y LoadAdapterViewState.Se llama a SaveAdapterControlState, SaveAdapterViewState, LoadAdapterControlState y LoadAdapterViewState cuando se guardan y cargan, respectivamente, el control privado y los estados de vista.

Los métodos base OnInit, OnLoad, OnPreRender y OnUnload vuelven a llamar a los métodos de clase Control correspondientes.Por tanto, cualquiera de estos métodos ControlAdapter reemplazados debe llamar a sus métodos base; de lo contrario, no se generará el evento asociado al método de clase Control.

Los controles y los adaptadores implementan opcionalmente las interfaces IPostBackDataHandler y IPostBackEventHandler..NET Framework determina si existe un adaptador y si éste implementa dichas interfaces.Si lo hace, el adaptador debe reemplazar a los métodos LoadPostData, RaisePostDataChangedEvent y RaisePostBackEvent, si es necesario.Si los datos de postback no se reconocen en el adaptador, este debe volver a llamar al control para procesarlos.Los controladores de eventos subsiguientes también deben volver a llamar al control.

Notas para los herederos:

Cuando herede de la clase ControlAdapter, si un control requiere la funcionalidad de adaptador general, asígnele una clase base de adaptador correspondiente, con un nombre basado en el modelo ControlTypeAdapter (por ejemplo, TextBoxAdapter).El adaptador debe devolver como mínimo una instancia del control fuertemente tipada, por medio de su propiedad Control.

  1. Los adaptadores de control para un lenguaje de marcado y un tipo de control determinado deben denominarse según el modelo MarkupControlTypeAdapter (por ejemplo, XhtmlTextBoxAdapter).Los adaptadores para un control deben implementarse en un espacio de subnombres Adapters.

Los adaptadores de control deben heredar de la clase base apropiada y seguir el mismo modelo de herencia que el control.Por ejemplo, un adaptador para un control que hereda de la clase base Control debe heredar de la clase ControlAdapter o de la clase ControlTypeAdapter pertinente.

Los adaptadores especializados deben definirse para el control especializado bajo todos los nodos de dispositivo en los archivos de configuración .browser.

Un control correctamente implementado no debe suponer que tiene asociado un adaptador ni que el adaptador asociado implementa una interfaz concreta,sino debe confirmar que esto es cierto antes de realizar llamadas.

Se puede simular el reemplazo de métodos de evento protegidos en el control, como el método OnClick del LinkButton.Primero, cree una clase de adaptador con un método OnClick.A continuación, cree un nuevo control derivado de LinkButton y reemplace el método OnClick.El método OnClick reemplazado llama al método OnClick del adaptador.El objeto adaptador está disponible a través de la propiedad Adapter protegida de la clase Control.La propiedad Adapter del control es null si no hay un adaptador asociado, por lo que el código debe comprobar si se da esa condición antes de llamar a métodos del adaptador.

.NET Framework
Disponible desde 2.0

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Volver al principio
Mostrar:
© 2016 Microsoft