Descripción de comandos y controles
La separación de la lógica de la presentación es la filosofía de diseño que inspira el sistema de presentación de comandos del marco de la cinta de opciones de Windows, un sistema basado en un patrón de diseño en el que la funcionalidad y el comportamiento se implementan independientemente de los controles que exponen esta funcionalidad.
Introducción
En este artículo se describe el diseño del sistema de comandos del marco de la cinta de opciones. Describe los conceptos de comandos y controles y explora cómo funcionan conjuntamente para proporcionar una experiencia de comandos enriquecida con un host de nuevas funcionalidades de interfaz de usuario.
Sistema de comandos de la cinta de opciones de Windows
En el marco de la cinta de opciones, los comandos y los controles son entidades independientes. Un comando es una estructura abstracta, sin restricciones de presentación, que representa una tarea o clase de funcionalidad específica. Un control, por otro lado, es un objeto concreto que expone la funcionalidad Command a través de la interfaz de usuario de la cinta de opciones.
Esta distinción proporciona la capacidad de definir comandos que están libres de detalles de la interfaz de usuario y que se pueden ejecutar en la intención de una acción sin necesidad de administrar cómo se invocó la acción.
Controles
Los controles son los objetos de interfaz de usuario necesarios para la presentación de Comandos. El marco representa y administra en tiempo de ejecución en función de la interacción del usuario y un conjunto de propiedades y comportamientos inherentes.
Conocido como diseño adaptable, la flexibilidad administrada por el marco de la interfaz de usuario es una de las grandes ventajas de la cinta de opciones. Los controles de cinta de opciones pueden volver a configurarse automáticamente a través de plantillas de diseño definidas por el desarrollador o dependientes del marco que pueden responder a varios requisitos en tiempo de ejecución, todo ello sin escribir una sola línea de código de presentación. Para obtener más información, vea Personalización de una cinta de opciones mediante definiciones de tamaño y directivas de escalado.
Además de las ventajas del diseño adaptable, varios controles complejos de la cinta de opciones proporcionan soluciones independientes para espacios de problemas específicos de la interfaz de usuario. Al ofrecer un modelo de interacción sofisticado, los controles ribbon, como FontControl o ColorPicker, proporcionan la capacidad de manipular datos en términos más abstractos a través de bolsas de propiedades de atributos reales de fuente o color en lugar de a través de varios subcontroles, enumeraciones y valores de índice de controles estándar de Windows.
Comandos
Acoplado flexiblemente a los controles de cinta de opciones que exponen su funcionalidad, las implementaciones de comandos son el dominio de la aplicación host y toman la forma de agentes de escucha de eventos, controladores de comandos y varias propiedades command.
Los comandos se declaran en el marcado de cinta de opciones con un identificador único o se les asigna un identificador generado por el compilador de marcado en la compilación. Los comandos están asociados a controles a través de un nombre de comando, pero, a diferencia de los controles, su funcionalidad real se define en el código donde se enlazan a controladores de comandos específicos a través del identificador de comando.
Nota
En la compilación, este identificador se almacena en un archivo de encabezado de definición de identificador que expone Comandos a sus controladores de comandos correspondientes en la aplicación host de cinta de opciones.
Cada comando tiene un tipo de comando subyacente que se incluye en la enumeración UI_COMMANDTYPE .
Experiencia de comando en acción
Las funcionalidades de este modelo de comandos se muestran mediante la barra de herramientas de acceso rápido (QAT) de la cinta de opciones. QaT proporciona a los usuarios finales una manera de definir fácilmente sus propios accesos directos para prácticamente cualquier control de la interfaz de usuario de la cinta de opciones. Un acceso directo se agrega dinámicamente al QAT en tiempo de ejecución cuando el usuario hace clic con el botón derecho en un control de cinta de opciones y selecciona Agregar a la barra de herramientas de acceso rápido en el menú contextual.
En la siguiente imagen se muestra la opción Pegar y Pegar desde comandos, representada por un control SplitButton , en la cinta de opciones de Pintura de Windows 7.
En la siguiente imagen se muestra la misma pegada y pegada de comandos, aún representada por un control SplitButton , en la cinta de opciones QAT de Windows 7 Paint.
Cuando el QAT hospeda un control, la nueva instancia del control mantiene toda la funcionalidad del control original sin necesidad de agentes de escucha de eventos y controladores de comandos adicionales para admitirlo. Ambos controles se enlazan al mismo controlador de comandos de la cinta de opciones a través de un identificador de comando compartido. De este modo, el marco trata ambos controles como uno, independientemente de lo que se invoque.
Nota
Las mismas ventajas se realizan cuando los comandos se incorporan a contextPopup en tiempo de diseño. En este caso, los controladores pegar comandos se pueden usar si el control SplitButton aparece en la cinta de opciones, el QAT o contextPopup.
Temas relacionados