我在两个不同的项目中有以下LAF(“外观和感觉”,来自Java的Swing):
类型1:
类型2:
我想知道如何在这些和其他LAF之间切换。 提前谢谢。
答案 0 :(得分:0)
我知道快速交换不同视觉样式的最简单,最易维护的方法是在外部ResourceDictionary中使用样式。对于下面的示例,您将创建一个名为“Skins”的新解决方案文件夹,然后添加一个名为“MainSkin.xaml”的新类。
MainWindow.xaml
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Skins/MainSkin.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<TextBlock Style="{StaticResource TextBlockV1}" Text="This is some text." />
</Grid>
外观\ MainSkin.xaml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="TextBlockV1" TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="FontFamily" Value="Comic Sans MS" />
<Setter Property="FontSize" Value="14" />
</Style>
<Style x:Key="TextBlockV2" TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Right" />
<Setter Property="FontFamily" Value="Courier New" />
<Setter Property="FontSize" Value="30" />
</Style>
<Style x:Key="TextBlockV3" TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Left" />
<Setter Property="FontFamily" Value="Times New Roman" />
<Setter Property="FontSize" Value="8" />
</Style>
</ResourceDictionary>
答案 1 :(得分:-1)
Change look and feel in WPF application?
这将引导您WPF Toolkit,它会向您展示如何在页面的xml中设置主题。