在我的App.xaml中,我有以下内容(仅作为示例):
<Style Class="Banner" TargetType="Label">
<Setter Property="TextColor" Value="#00ff00" />
<Setter Property="BackgroundColor" Value="#0000ff" />
<Setter Property="FontSize" Value="30" />
</Style>
此方法适用于:
<Label StyleClass="Banner" Text="Hello" />
但是,如果我使用深色/浅色主题之一,则将忽略“横幅” StyleClass。我希望我创建的StyleClass可以添加到主题中。
我希望能够“增强”主题,这可能吗?
答案 0 :(得分:0)
我已经尽力使它开始工作。在我的App.xaml中,我有...
<!-- Enhancements to the Dark theme -->
<ResourceDictionary x:Name="EnhancedDark">
<Style Class="Banner" TargetType="Label">
<Setter Property="TextColor" Value="#000000" />
<Setter Property="BackgroundColor" Value="#ffffff" />
<Setter Property="FontSize" Value="Large" />
</Style>
...
</ResourceDictionary>
<!-- Enhancements to the Light theme -->
<ResourceDictionary x:Name="EnhancedLight">
<Style Class="Banner" TargetType="Label">
<Setter Property="TextColor" Value="#ffffff" />
<Setter Property="BackgroundColor" Value="#000000" />
<Setter Property="FontSize" Value="Large" />
</Style>
...
</ResourceDictionary>
然后在我的app.cs中设置具有增强功能的Dark主题
Resources.MergedDictionaries.Add(new DarkThemeResources());
Resources.MergedDictionaries.Add(EnhancedDark); // Important
Resources.MergedDictionaries.Remove(EnhancedLight); // Important
对于光也是如此。现在,在我的代码中,我可以:
<Label StyleClass="Banner" ... />