Cómo: Crear un control LightSwitch

Los controles de LightSwitch son la manera más común de personalizar el aspecto y la funcionalidad de una aplicación de LightSwitch. Un control de LightSwitch es simplemente un control de Silverlight con funciones adicionales del modelo integrado de LightSwitch. Existen dos formas de agregar controles a LightSwitch: como un control personalizado o como una extensión de control. Para obtener más información sobre cómo usar controles personalizados, vea Cómo: Agregar un control personalizado a una pantalla de Silverlight.

Aunque la mayoría de los controles de Silverlight se puede utilizar directamente como un control personalizado en LightSwitch, hay varias razones para crear una extensión de control en su lugar. Una extensión del control se puede compartir con mayor facilidad entre aplicaciones y desarrolladores, y una extensión puede proporcionar capacidades específicas de LightSwitch que un control de Silverlight no puede. Además, algunos tipos de controles, como controles de grupo, solo pueden crearse como extensión porque deben implementar la propiedad de LightSwitch SupportedContentItemKind.

En la tabla siguiente se muestran las cinco tipos de extensiones de control que puede crear:

Tipo de control

Descripción

Valor

Representa un elemento de contenido para un tipo de datos simple escalar específico; visualizado mediante un único control.

Detalles

Representa un elemento de contenido para una entidad o tipo complejo; visualizado utilizando un solo control o como campos individuales mediante elementos secundarios del nodo.

Comando

Representa un elemento de contenido para iniciar una acción; por ejemplo, Button o Hyperlink.

Collection

Representa un elemento de contenido de la colección; por ejemplo Grid o ListBox.

Group

Representa un elemento de contenido de grupo; por ejemplo TableLayout o RowsLayout.

Los pasos que debe seguir para crear una extensión de control varía ligeramente para los distintos tipos de controles, pero el proceso general es el mismo. En este documento se proporciona una lista de los pasos necesarios y opcionales para crear una extensión de control mediante LightSwitch Extensibility Toolkit, con vínculos a la documentación complementaria.

Pasos necesarios para crear una extensión de control

  1. Cree un proyecto de extensión y después agregue la plantilla Control. Para obtener más información, vea Cómo: Crear un proyecto de extensión de LightSwitch.

  2. Actualice los metadatos SupportedContentItemKind y DisplayName. Para obtener más información, vea “Para actualizar los metadatos de control” en Tutorial: Crear una extensión de control de diseño inteligente.

    También puede especificar DisplayName como un recurso String. Para obtener más información, vea “Para actualizar los metadatos de control” y “Para agregar cadenas de recursos” en Tutorial: Crear una extensión de control de detalle.

  3. Para los valores y controles de la colección, actualice los metadatos SupportedDataType. Para obtener más información, vea “Para especificar los tipos de datos admitidos” en Tutorial: Crear una extensión de control de valor

  4. Reemplace los iconos del control. Para obtener más información, vea “Actualizar el icono de control” en Tutorial: Crear una extensión de control de detalle.

  5. Defina la implementación y la interfaz de usuario del control.

    Los detalles son diferentes para cada tipo de control. Para obtener más información, vea Tutorial: Crear una extensión de control de valor, Tutorial: Crear una extensión de control de detalle, Tutorial: Crear una extensión de control de diseño inteligente o Tutorial: Crear una extensión de control de panel de apilamiento.

  6. Pruebe y depure el control. Para obtener más información, vea Cómo: Depurar o probar una extensión de LightSwitch.

  7. Establezca las propiedades del control. Para obtener más información, vea Cómo: Establecer propiedades de paquete VSIX.

  8. Distribuya el control. Para obtener más información, vea Cómo: Distribuir una extensión de LightSwitch.

Pasos opcionales para crear una extensión de control

  1. Agregue propiedades al control. Para obtener más información, vea Definir, invalidar y usar propiedades de control de LightSwitch.

  2. Cree editores de propiedades personalizados para el control. Para obtener más información, vea ”Crear un editor personalizado para la propiedad DisplayProperty” en Tutorial: Crear una extensión de control de detalle.

  3. Permita que los programadores puedan tener acceso al control mediante programación. Para obtener más información, vea “Hacer que el control sea programable” en Tutorial: Crear una extensión de control de detalle.

  4. Agregue compatibilidad para los campos calculados. Para obtener más información, vea “Controlar el estado IsComputed en el control” en Tutorial: Crear una extensión de control de detalle.

  5. Agregue compatibilidad para el evento KeyUp. Para obtener más información, vea “Impedir la eliminación de un elemento” en Tutorial: Crear una extensión de control de detalle.

  6. Agregue compatibilidad con la navegación mediante el teclado. Para obtener más información, vea “Controlar la exploración del teclado en un DataGrid” en Tutorial: Crear una extensión de control de detalle.

  7. Agregue compatibilidad para el modo de solo lectura. Para obtener más información, vea “Agregar compatibilidad de solo lectura” en Tutorial: Crear una extensión de control de valor.

  8. Agregue compatibilidad con el modo de presentación al control. Para obtener más información, vea Conceptos adicionales sobre el control LightSwitch.

  9. Cree un control que es siempre de solo lectura. Para obtener más información, vea Conceptos adicionales sobre el control LightSwitch.

  10. Proporcione un editor y un control de visor. Para obtener más información, vea Conceptos adicionales sobre el control LightSwitch.

Vea también

Tareas

Tutorial: Crear una extensión de control de valor

Tutorial: Crear una extensión de control de detalle

Tutorial: Crear una extensión de control de diseño inteligente

Tutorial: Crear una extensión de control de panel de apilamiento

Cómo: Crear un proyecto de extensión de LightSwitch

Cómo: Depurar o probar una extensión de LightSwitch

Cómo: Establecer propiedades de paquete VSIX

Cómo: Distribuir una extensión de LightSwitch

Conceptos

Definir, invalidar y usar propiedades de control de LightSwitch

Conceptos adicionales sobre el control LightSwitch

LightSwitch Extensibility Toolkit para Visual Studio 2013