资源字典WPF

时间:2011-09-12 14:42:33

标签: wpf xaml

我的WPF应用程序中有一个资源字典,其中包含各种控件的样式信息。

它可以像我们在HTML中使用CSS一样使用吗?例如

 p
 {
   margin:20px;
   font:Tahoma;
  }

这适用于HTML中的所有“p”标记。我们不必在HTML中为“p”标记特别提及。

相同的方法适用于WPF,还是我们必须具体 提到风格

<TextBlock Text="Test" Style="{DynamicResource SomeTextblockStyle}" />

在XAML中

2 个答案:

答案 0 :(得分:2)

您当然可以为每种类型设置默认样式。您可以在Generic.xaml内执行此操作,请注意我没有提供密钥。

<Style TargetType="{x:Type Button}">
     <Setter Property="Height" Value="25"/>
     <Setter Property="Foreground" Value="White"/>
</Style>

这样可以在应用程序中为Button的每个实例设置样式。

如果您转到XAML文件并定义Button的实例,覆盖Foreground值,则该本地实例将优先于全局样式。

<Button Foreground="Black"/>

答案 1 :(得分:1)

您可以设置样式,如使用键

<Style TargetType="{x:Type TextBlock}" x:Key="myStyle">
   <Setter Property="Margin" Value="20"/>
   <Setter Property="FontFamily" Value="Tahoma"/>
</Style>

在Window.Xaml

<TextBlock Text="Hello" Style="{DynamicResource myStyle}"/>