12

En la vista previa del consumidor de Windows 8 puede personalizar su experiencia, incluyendo la configuración de un "color de fondo" que luego también se utiliza como fondo de mosaicos seleccionados, barra de aplicaciones, etc. Por lo tanto, seleccionar naranja significará que los acentos de color naranja son visibles en la interfaz de usuario de Metro de Windows 8.Color del tema de Windows 8 - accediendo programáticamente

Actualmente estoy creando algunos controles personalizados, y me gustaría tener acceso a este color en mi diseño, de modo que el usuario cambie de color para que los acentos de las aplicaciones se vuelvan a colorear en consecuencia.

No puedo encontrar la forma de obtener este color en mi XAML. Parece razonable esperar que haya un pincel dinámico o recurso de color a nivel del sistema al que pueda hacer referencia.

¿Alguien tiene alguna idea?

Respuesta

7

Basado en this thread (Start Screen background as my metro apps background) en MSDN, esto no está disponible.

En caso desaparece el hilo de MSDN, el sitio no está disponible temporalmente o Microsoft mueve la estructura de directorios vuelta y se va enlaces por todo el lugar huérfanos: La respuesta relevante allí, desde Microsoft empleado Rob Kaplan, dijo:

Las aplicaciones de estilo Metro no pueden consultar el color de fondo de la pantalla de inicio.

Por lo tanto, se puede interpretar como una respuesta oficial de que esta funcionalidad no está disponible.

+1

+1. Desafortunado, dado WP7 le permite obtener el color de acento de los usuarios. – Alan

+1

Creo que para la mayoría de las aplicaciones probablemente sea mejor definir temas independientemente del sistema operativo de todos modos. Es más fácil por una vez: no tiene que preocuparse por el diseño de su aplicación que admite múltiples temas, lo que implica verificar cuál es el tema y proporcionar activos que coincidan con cada uno de estos temas. Imagine que necesita proporcionar íconos o fondos que funcionen bien con todos los temas posibles y quizás temas futuros que aún no están disponibles para la prueba. Además, probablemente sea mejor para marcar su aplicación. Entonces tal vez Microsoft no quiere que la gente piense que su aplicación es parte del sistema operativo ... –

+0

Y aún no [disponible en Windows 8.1 "Lo siento, este no es un color accesible desde los marcos de la interfaz de usuario.", Por Tim Heuer, Administrador de programas , UI Platforms] (http://social.msdn.microsoft.com/Forums/en-US/9a200123-45cd-4f14-8ab7-f997e0534495/using-windows-accent-color?forum=w81prevwCsharp) –

5

Alan,

Si bien estoy de acuerdo con usted en que el concepto de "marca" tiene sentido si usted está planeando en superposiciones gráficas complejas, recibiendo el color del tema base que está disponible en el teléfono de Windows usando un tema estático cepillo proporcionado por el sistema operativo es una mejor opción para los temas de color de base en su aplicación. El usuario ha elegido ese color porque lo encuentran agradable a la vista. Aún más importante, ciertos usuarios pueden ser daltónicos a uno o más colores y han elegido la mejor opción para mejorar la legibilidad y la accesibilidad.

Tener acceso al esquema de color estándar le permite mantenerse dentro del tema de luz/oscuridad y cumplir con los estándares de accesibilidad requeridos por muchas empresas para todos los programas para personas con problemas de visión.

El SDK está en su infancia y es posible que esta característica importante haya quedado fuera de la implementación actual porque no estaba listo para el lanzamiento del SDK (los colores podrían no haber sido finalizados o la compatibilidad del tema en ciertos dispositivos todavía se estaban desarrollando).

No es demasiado difícil derivar el color del tema de un pincel de tema existente que se le proporciona, como ProgressBarForegroundThemeBrush, agregando/restando valores para obtener el color del tema actual.

Mi sugerencia sería adherirse a los estilos de tema de la mejor manera posible para asegurar que su aplicación se mantendrá actualizada independientemente de los cambios en el sistema operativo.

He sido programador de Windows Phone desde mayo de 2010.

2

Hay algunas API indocumentados en UXTHEME.DLL que recuperan los colores del tema. Si usa estas funciones y envía su aplicación a la Tienda Windows, fallará la certificación y, en general, es una mala idea confiar en las funciones no documentadas de todos modos.Aún así, para aquellos interesados ​​en obtener estos valores, I wrote about the process.

+0

Además de esto, hice una [tabla de referencia] (http://www.quppa.net/win8col/) de los colores del tema encontrados en Windows 8. – Quppa

Cuestiones relacionadas