22 may 2014

Crear un estilo personalizado de un componente ya existente

Para crear un estilo personalizado en XAML, por ejemplo de un TextBlock al que queremos que sirva para Títulos en unos forms o lo que sea, tenemos que definirlo de la manera siguiente.

Crear un estilo personalizado de un componente ya existente

  • Primero tenemos que crear nuestra hoja de estilos (cualquier documento xaml que no sea una vista)
  • Luego crear un <Style con una clave (x:Key) y asignarle de que tipo es (TargetType)
  • Lo que haremos será asignarle las propiedades que queramos sobrescribir con <Setter Property
  • Y añadiremos el valor que queramos asignarle en Value
  • Aquí tenéis un par de ejemplos de lo que sería un título y uno con letra pequeña
  • Para aplicarlo a las vistas sólo hace falta que asignemos el nuevo estilo: <TextBlock Text="el texto que tenga que mostrar" Style="{StaticResource Title}" />

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">


    <Style x:Key
<Style x:Key="Title" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="Segoe UI Light" />
        <Setter Property="FontSize" Value="20"/>
        <Setter Property="Margin" Value="0,5" />
        <Setter Property="TextOptions.TextFormattingMode" Value="Ideal" />        
    </Style>

 <Style x:Key="Small" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="Segoe UI" />
        <Setter Property="FontSize" Value="{DynamicResource SmallFontSize}"/>
        <Setter Property="TextOptions.TextFormattingMode" Value="Display" />

    </Style>
</ResourceDictionary>

No hay comentarios:

Publicar un comentario