Compartir a través de


Tutorial: Crear controles de usuario para dispositivos

Actualización: noviembre 2007

En este tutorial se crean una biblioteca de controles y un control de usuario para colocarlo en la biblioteca. Se distingue entre un control de usuario, una combinación de controles de formularios Windows Forms en una unidad reutilizable única, y un control personalizado, un control que requiere una interfaz de usuario o una funcionalidad no disponibles mediante controles estándar.

El control de usuario de este tutorial es una sencilla pantalla de reloj para dispositivos, que utiliza como modelo otros tutoriales de escritorio parecidos, como Tutorial: Crear un control compuesto con Visual Basic y Tutorial: Crear un control compuesto con Visual C#.

El tutorial consta de cuatro tareas principales:

  • Crear una biblioteca de controles y un control.

  • Cambiar el nombre de la biblioteca y del control.

  • Agregar componentes al control.

  • Probar el control en el emulador de dispositivos.

Puede utilizar Visual Basic o Visual C# para este tutorial. Si los dos lenguajes usan el mismo nombre de archivo pero con una extensión específica del lenguaje, una barra vertical recordará que se ha de elegir la extensión correspondiente al lenguaje que se esté utilizando, como en NombreDeArchivo.vb|cs.

Nota:

Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.

Este tutorial se ha escrito usando Configuración de desarrollo de Visual Basic y Configuración de desarrollo de Visual C#.

Requisitos previos

Ninguno.

Seleccionar un dispositivo de destino

Lleve a cabo el procedimiento siguiente para asegurarse de que se le pedirá seleccionar un dispositivo cuando implemente la solución.

Para solicitar opciones de dispositivos durante la implementación

  1. En el menú Herramientas, haga clic en Opciones, expanda Herramientas de dispositivo y, a continuación, haga clic en General.

    (Si no aparece Herramientas de dispositivo, seleccione Mostrar todas las configuraciones en la parte inferior del cuadro de diálogo Opciones.)

  2. Active la casilla Mostrar dispositivos antes de implementar un proyecto de dispositivo.

Crear el proyecto

El nombre que se asigna a un proyecto nuevo también establece el espacio de nombres de la raíz y el nombre de ensamblado.

Para crear la biblioteca de controles y el control

  1. (Visual Basic) En el menú Archivo, haga clic en Nuevo proyecto.

    O bien

    (Visual C#) En el menú Archivo, elija Nuevo y haga clic en Proyecto.

  2. En el panel Tipos de proyecto del cuadro de diálogo Nuevo proyecto, expanda Visual Basic o Visual C# y, a continuación, haga clic en Smart Device.

    Si el lenguaje que desea no aparece desde un principio, expanda Otros lenguajes. Su configuración de desarrollo rige esta pantalla.

  3. En el panel Plantillas, haga clic en Proyecto de Smart Device.

  4. En el cuadro Nombre, escriba ctlDevClockLib y haga clic en Aceptar.

  5. (Visual C# sólo) En el cuadro Ubicación, compruebe dónde desea almacenar los archivos de proyecto y, a continuación, haga clic en Aceptar.

  6. En el menú desplegable Plataforma de destino, seleccione Pocket PC 2003.

  7. Seleccione .NET Compact Framework Versión 2.0 en el menú desplegable Versión de .NET Compact Framework.

  8. Haga clic en Biblioteca de controles en el panel Plantillas y, a continuación, haga clic en Aceptar.

    Aparece el Diseñador de componentes.

Ya ha especificado el nombre del proyecto, el espacio de nombres de la raíz y el nombre de ensamblado (ctlDevClockLib). Sin embargo, los componentes del proyecto tienen nombres predeterminados asignados por Visual Studio (por ejemplo, UserControl1). Lo normal es que desee cambiar estos nombres por términos más significativos.

Para cambiar el nombre de la biblioteca y del control.

  1. En el Explorador de soluciones, haga clic con el botón secundario del mouse en UserControl1.vb|cs y, a continuación, haga clic en Propiedades.

  2. Cambie el Nombre de archivo a ctlDevClock.vb|cs.

  3. (Sólo Visual C#) En el cuadro de mensaje donde se pregunta si desea cambiar el nombre de todas las referencias a este elemento de código, haga clic en Sí.

    El cambio de nombre en la ventana Propiedades ahora se extiende a otras referencias, como el nombre de clase y el constructor.

A continuación, agregue componentes del Cuadro de herramientas para proporcionar funcionalidad e interacción con el usuario al control de usuario. En este tutorial, agregará un control Temporizador para tener acceso a la hora del sistema y un control Label para mostrar la hora.

Para agregar componentes y cambiar sus propiedades

  1. En el Cuadro de herramientas, haga doble clic en Label.

    Se agrega un control Label al control de usuario en el Diseñador de componentes.

  2. En la ventana Propiedades del control Label, realice las acciones siguientes:

Propiedad

Cambie a

Name

lblDisplay

Text

(En blanco)

TextAlign

TopCenter

Font.Size

14

  1. En el Cuadro de herramientas, haga doble clic en Timer.

    Aparecerá un control Timer en la bandeja de componentes.

  2. En la ventana Propiedades del control Timer, realice las acciones siguientes:

Propiedad

Cambie a

Interval

1000

Enabled

True

En los pasos siguientes agregará un controlador de eventos para mostrar los impulsos de reloj en el control Label.

Para agregar un controlador de eventos

  1. En la bandeja de componentes, haga doble clic en Timer1 (Visual Basic) o timer1 (C#) para abrir el editor de código en el evento Tick.

  2. (Visual Basic) Inserte este código de control de eventos:

    lblDisplay.Text = Format(Now, "hh:mm:ss")
    

    — o bien —

    (Visual C#)

    lblDisplay.Text = DateTime.Now.ToLongTimeString();
    
  3. (Visual Basic) Cambie el modificador de acceso de Private a Protected y agregue la palabra clave Overridable para que el código del controlador tenga el aspecto siguiente:

    Protected Overridable Sub Timer1_Tick(ByVal sender As Object, _
       ByVal e As System.EventArgs) Handles Timer1.Tick
       ' Causes the label to display the current time  
       lblDisplay.Text = Format(Now, "hh:mm:ss")
    End Sub
    

    — o bien —

    (Visual C#) Cambie el modificador de acceso de private a protected y agregue la palabra clave virtual para que el código del controlador tenga el aspecto siguiente:

    protected virtual void timer1_Tick(object sender, System.EventArgs
       e)
    {
       // Causes the label to display the current time.
       lblDisplay.Text = DateTime.Now.ToLongTimeString(); 
    }
    
  4. En el menú Archivo, haga clic en Guardar todo.

  5. (Visual Basic sólo) En el cuadro de diálogo Guardar proyecto, guarde el proyecto como ctlDevClockLib en una ubicación de su elección.

Probar el control

Esta aplicación para dispositivos simple actúa como un contenedor de prueba para el control.

Para generar el control y crear un contenedor de prueba

  1. En el menú Generar, haga clic en Generar (o en Generar ctlDevClockLib).

  2. En el menú Archivo, elija Agregar y, después, haga clic en Nuevo proyecto.

  3. En el cuadro de diálogo Agregar nuevo proyecto, haga clic en Smart Device en el panel Tipos de proyecto y, a continuación, haga clic en Proyecto de Smart Device en el panel Plantillas.

  4. En el cuadro Nombre, escriba Prueba y, a continuación, haga clic en Aceptar.

  5. En el cuadro de diálogo Agregar nuevo proyecto de Smart Device, seleccione Pocket PC 2003 en el menú desplegable Plataforma de destino, seleccione .NET Compact Framework Versión 2.0 en el menú desplegable Versión de .NET Compact Framework, haga clic en Aplicación de dispositivo en el panel Plantillas y, a continuación, haga clic en Aceptar.

  6. En el Explorador de soluciones, haga clic con el botón secundario del mouse en el proyecto Prueba y, a continuación, en Establecer como proyecto de inicio.

  7. Haga clic con el botón secundario del mouse en el proyecto Prueba y, a continuación, haga clic en Agregar referencia.

  8. En el cuadro de diálogo Agregar referencia, haga clic en la ficha Proyectos y, a continuación, haga doble clic en ctlDevClockLib.

  9. En el Cuadro de herramientas, busque la ficha Componentes de ctlDevClockLib y, a continuación, haga doble clic en el componente ctlDevClock.

    El control se carga en el diseñador.

  10. En el menú Depurar, haga clic en Iniciar (o Iniciar depuración).

  11. En el cuadro de diálogo Implementar, seleccione Pocket PC 2003 SE - Emulador y haga clic en Implementar.

Vea también

Conceptos

Recomendaciones sobre tipos de controles

Otros recursos

Desarrollar controles de formularios Windows Forms en tiempo de diseño