Compartir vía


Cómo: Utilizar SystemParameters

Este ejemplo muestra cómo acceder y utilizar las propiedades de SystemParameters para estilizar o personalizar un botón.

Ejemplo

Los recursos del sistema exponen varias configuraciones basadas en el sistema como recursos para ayudarle a crear objetos visuales coherentes con la configuración del sistema. SystemParameters es una clase que contiene tanto las propiedades de los valores de los parámetros del sistema, como las claves de los recursos que se enlazan a los valores. Por ejemplo, FullPrimaryScreenHeight es un valor de la propiedad SystemParameters y FullPrimaryScreenHeightKey es la clave de recurso correspondiente.

En XAML, se pueden usar los miembros de SystemParameters como uso de propiedades estáticas, o como referencias de recursos dinámicos (con el valor de la propiedad estática como clave). Use una referencia de recursos dinámicos si quiere que el valor basado en el sistema se actualice automáticamente mientras se ejecuta la aplicación. De lo contrario, use un recurso estático. Las claves de recurso tienen el sufijo Key anexado al nombre de la propiedad.

En el siguiente ejemplo se muestra cómo obtener acceso a los valores estáticos de SystemParameters y cómo usarlos para aplicar estilo a un botón o personalizarlo. En este ejemplo de marcado aplica un tamaño a un botón mediante la aplicación de valores SystemParameters a un botón.

<Button FontSize="8" Margin="10, 10, 5, 5" Grid.Column="0" Grid.Row="5"      
     HorizontalAlignment="Left" 
     Height="{x:Static SystemParameters.CaptionHeight}"
     Width="{x:Static SystemParameters.IconGridWidth}">
     SystemParameters
</Button>

Para usar los valores de SystemParameters en el código, no es necesario usar ninguna referencia estática ni ninguna referencia de recursos dinámicos. En su lugar, use los valores de la clase SystemParameters. Aunque las propiedades que no son de clave aparentemente se definen como propiedades estáticas, el comportamiento en tiempo de ejecución de WPF cuando está hospedado en el sistema volverá a evaluar las propiedades en tiempo real y representará correctamente los cambios realizados por el usuario en los valores del sistema. En el ejemplo siguiente se muestra cómo establecer el ancho y el alto de un botón mediante valores SystemParameters.

Button btncsharp = new Button();
btncsharp.Content = "SystemParameters";
btncsharp.FontSize = 8;
btncsharp.Background = SystemColors.ControlDarkDarkBrush;
btncsharp.Height = SystemParameters.CaptionHeight;
btncsharp.Width = SystemParameters.IconGridWidth;
cv2.Children.Add(btncsharp);
Dim btn As New Button()
btn.Content = "SystemParameters"
btn.FontSize = 8
btn.Background = SystemColors.ControlDarkDarkBrush
btn.Height = SystemParameters.CaptionHeight
btn.Width = SystemParameters.IconGridWidth
cv2.Children.Add(btn)

Vea también