WPF – Triggers

No se si acuerdan, pero en este post, les habia prometido que iba a mostrar un ejemplo de como usar los Triggers en WPF.


Cuando un determinado evento, de un control ocurre, ahi es cuando se disparan los Triggers. Asi tenemos que verlos.


Pero mejor veamos un poco de codigo


 


<Window x:Class=»EjemplosBlog.Window1″
    xmlns
=»http://schemas.microsoft.com/winfx/2006/xaml/presentation»
    xmlns:x
=»http://schemas.microsoft.com/winfx/2006/xaml»
    Title
=»BlogSamples»
    Height
=»300″
    Width
=»300″>
  
<Grid>
    
<Grid.Resources>
      
<Style TargetType=»{x:Type Button}»>
        <Style
.Triggers>
          <Trigger Property
=«Button.IsMouseOver» Value=«true»>
            <Setter Property
=«FontSize» Value=«15»></Setter>
            <Setter Property
=«FontWeight» Value=«Bold»></Setter>
          <
/Trigger>
          <Trigger Property
=«Button.IsPressed» Value=«true»>
            <Setter Property
=«Background» Value=«Blue»></Setter>
          <
/Trigger>
        <
/Style.Triggers>
      </
Style>

    
</Grid.Resources>
    
<Button Name=»btnHelloWorld» Height=»54″ Margin=»5,5,117,0″ 
       VerticalAlignment=»Top»>
      Hello World
  
</Button>
  
</Grid>
</Window>

 


Expliquemos un poco lo que esta en negrita.


Como veran cree un estilo, al cual le dije que va a ser aplicado a los Botones.

Dependiendo de donde queremos que este disponible el estilo, podemos declararlo de distinta forma.


Por ejemplo en el App.xaml, como parte de los Application Resources, dejando accesible para todo control de nuestra aplicacion este estilo. Ejemplo:


 


<Application x:Class=»EjemplosBlog.App»
    xmlns
=»http://schemas.microsoft.com/winfx/2006/xaml/presentation»
    xmlns:x
=»http://schemas.microsoft.com/winfx/2006/xaml»
    StartupUri
=»Page1.xaml»
    
>
    
<Application.Resources>
      
<Style x:Key=»ApplicationStyle»>
        <Setter Property
=«Button.Background» Value=«Blue» />
        

      </
Style>
    
</Application.Resources>
</Application>

Tambien, podemos declarlo a nivel de una pagina o ventana con Page.Resources.


En nuestro caso, agregamos el estilo en el elemento Grid.


Ahora bien, como veran, defini 2 triggers.


El primero va dispararse cuando pase el mouse por arriba del boton, y en ese momento, como bien puede leerse el tamaño de la letra se agrandara y la misma pasara a estar en negrita.


El segundo, que se va a disparar cuando el boton sea apretado, solo cambiara el fondo del boton a un color Azul.


 


Acabamos de conocer una parte muy util de WPF. Aunque no del todo, porque falta que hablemos sobre DataTrigger, EventTrigger, MultiTrigger. Lo que acabamos de ver es PropertyTrigger.

Sobre estilos, hay mucho mas para hablar… pero eso sera en otro capitulo [;)]

Un comentario sobre “WPF – Triggers”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *