Controles compuestos
Actualización: noviembre 2007
ASP.NET y los controles de ASP.NET Mobile permiten crear controles mediante la combinación de controles existentes. Por ejemplo, si desea encapsular una serie de controles móviles en un control, puede crear un control móvil compuesto. Se puede crear un control compuesto como control de usuario en un archivo .ascx o como control personalizado incluido en su totalidad en un archivo .dll.
Independencia de lenguaje
Los controles de usuario se deben crear en un solo lenguaje, como C# o Visual Basic. Para crear controles compuestos, se pueden combinar controles creados en lenguajes diferentes. Por ejemplo, se puede combinar el ejemplo CarControl de C# descrito en Controles de usuario con un nuevo control escrito en Visual Basic que calcule el inventario de todos los vehículos con las características especificadas.
Composición general
Los controles compuestos pueden heredar de cualquier clase de control, incluida la clase base MobileControl de páginas Web móviles o la clase de controles Panel de páginas Web móviles. Para obtener más información sobre herencias, consulte Extender la funcionalidad con herencia.
Los adaptadores de las clases MobileControl y Panel representan automáticamente todos los controles secundarios, proporcionando la compatibilidad necesaria para los adaptadores de los controles compuestos. Si el control compuesto hereda de cualquier otro control móvil, se debe proporcionar un adaptador que represente los controles secundarios.
Utilizar controles compuestos en páginas Web móviles
Después de crear un control móvil compuesto, puede utilizarlo en una página Web móvil de estas maneras:
Si el control es un control de usuario, registre el prefijo de etiqueta, el nombre de etiqueta y el archivo .ascx en la página con una directiva @ Register, como se muestra en el ejemplo siguiente:
<%@ Register TagPrefix="myCompany" TagName="CarControl" Src="~/CarControl.ascx" %>
Si se trata de un control personalizado, registre el prefijo de etiqueta y el ensamblado en la página, utilizando sintaxis diferente para la directiva @ Register:
<%@ Register TagPrefix="myComany" Namespace="company.MobileControls" Assembly="company.MobileControls" %>
En la propia página se puede insertar el control mediante declaración, como en el ejemplo siguiente:
<myCompany:CarControl id="myCarCtl" />
Vea también
Conceptos
Composición específica de dispositivos
Escribir controles Web móviles propios