2009-02-10 9 views
5

Tengo el siguiente estilo de botón en Themes/Generic.xaml y quiero que se aplique a los botones en todas partes en mi aplicación WPF.¿Cómo conectar Themes/Generic.xaml a window1.xaml?

¿Cómo puedo conectarlo a mi window1.xaml por ejemplo?

<Style TargetType="{x:Type Button}"> 
    <Setter Property="SnapsToDevicePixels" Value="true"/> 
    <Setter Property="OverridesDefaultStyle" Value="true"/> 
    <Setter Property="MinHeight" Value="23"/> 
    <Setter Property="MinWidth" Value="75"/> 
    <Setter Property="Template"> 
    <Setter.Value> 
     <ControlTemplate TargetType="{x:Type Button}"> 
     <Border 
      x:Name="Border" 
      CornerRadius="2" 
      BorderThickness="1" 
      Background="#C0C0C0" 
      BorderBrush="#404040"> 
      <ContentPresenter 
      Margin="2" 
      HorizontalAlignment="Center" 
      VerticalAlignment="Center" 
      RecognizesAccessKey="True"/> 
     </Border> 
     <ControlTemplate.Triggers> 
      <Trigger Property="IsKeyboardFocused" Value="true"> 
      <Setter TargetName="Border" Property="BorderBrush" Value="#202020" /> 
      </Trigger> 
      <Trigger Property="IsDefaulted" Value="true"> 
      <Setter TargetName="Border" Property="BorderBrush" Value="#202020" /> 
      </Trigger> 
      <Trigger Property="IsMouseOver" Value="true"> 
      <Setter TargetName="Border" Property="Background" Value="#808080" /> 
      </Trigger> 
      <Trigger Property="IsPressed" Value="true"> 
      <Setter TargetName="Border" Property="Background" Value="#E0E0E0" /> 
      <Setter TargetName="Border" Property="BorderBrush" Value="#606060" /> 
      </Trigger> 
      <Trigger Property="IsEnabled" Value="false"> 
      <Setter TargetName="Border" Property="Background" Value="#EEEEEE" /> 
      <Setter TargetName="Border" Property="BorderBrush" Value="#AAAAAA" /> 
      <Setter Property="Foreground" Value="#888888"/> 
      </Trigger> 
     </ControlTemplate.Triggers> 
     </ControlTemplate> 
    </Setter.Value> 
    </Setter> 
</Style> 
+2

Sé que esto es una vieja pregunta, pero ... Sugeriría que si solo quiere cambiar el estilo de botón predeterminado ... mueva el xaml de arriba en su archivo App.xaml. Generic.xaml tiene un propósito específico de ser un mecanismo alternativo para el estilo temático de WPF. Vea el enlace (por canción) a continuación a otra publicación de StackOverflow con más información sobre este tema. – cplotts

+1

Diablos, la respuesta de Muad'Dib a continuación ... sugiere implícitamente lo que estoy diciendo ... al fusionar DefaultStyles.xaml en ... en lugar de Generic.xaml. :-) – cplotts

Respuesta

8

en su Widow1.xaml (o su App.xaml, cambiando a) ......

<Window1.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="DefaultStyles.xaml"/> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Window1.Resources> 
+0

Eso es todo, gracias! –