2009-12-29 15 views
8

Bien aquí está una pregunta de WPF de principiante de softball.WPF, ¿puede obtener los colores predeterminados de Windows?

Por defecto, el fondo de la ventana es blanco. Intento hackear un formulario de informe de error y quiero emular el aspecto y la apariencia más estándar de Windows.

¿Alguna manera fácil de obtener el color predeterminado para el fondo?

Respuesta

20

Utilizando la clase SystemColors y específicamente la propiedad WindowColor. Cuando se usa xaml, es mejor usar DynamicResources y, por lo tanto, usar las ... Propiedades clave. De esta forma, su aplicación cambia cuando el usuario cambia el color en Windows.

<Window> 
    <Window.Background> 
    <SolidColorBrush Color="{DynamicResource {x:Static SystemColors.WindowColorKey}}"> 
    </SolidColorBrush> 
    </Window.Background> 
</Window> 

Utilizando el ... BrushKey propiedades hace que sea más fácil de usar cuando se encuentra en necesidad de un cepillo

<Window Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"> 
</Window> 

PS: WPF de Windows ya debe tener el color correcto por defecto

+0

eh mis ventanas son blancos, no veo nada en mi xaml que establezca el color. –

+0

Entendido, es el hecho de que el fondo de una aplicación winform está predeterminado al color de control. De todos modos lo tengo, muchas gracias. : D –

+0

Sí, eso es lo que dije en mi PS. Pero lo pediste. :) Blanco es el color correcto de un fondo de ventana en tu tema. No se puede obtener más estándar que estándar. –

Cuestiones relacionadas