问题描述
我在 App.xaml 中定义了一个新的强调色,如下所示:
I defined a new accent color in App.xaml lke this:
Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
</ResourceDictionary.MergedDictionaries>
<Color x:Key="SystemAccentColor">#FFCB2128</Color>
<Color x:Key="AcmGreen">#FFB8C282</Color>
<Color x:Key="AcmPink">#FFE672A4</Color>
<Color x:Key="AcmPurple">#FF71749E</Color>
<Thickness x:Key="PivotItemMargin">0</Thickness>
</ResourceDictionary>
</Application.Resources>
它适用于 UWP 应用:
It works on UWP app:
但是,在 WASM 页面 (Edge Chromium - 81.0.416.77) 上,Accent Color 保持默认的蓝色
However, Accent Color stays default blue on WASM Page (Edge Chromium - 81.0.416.77)
WASM 上的强调色与 App.xaml 中定义的 UWP 版本不匹配.它应该是.我该如何解决这个问题?
The accent color on WASM do not match with UWP version which defined in App.xaml. It should be. How can I fix this?
Nuget 包:
软件包版本:
- Uno.UI.RemoteControl {2.4.0}
- Uno.Wasm.Bootstrap {1.2.0}
- Uno.Wasm.Bootstrap.DevServer {1.2.0}
- Microsoft.Extensions.Logging.Filter {1.1.2}
- Microsoft.Extensions.Logging.Con... {1.1.1}
- NETStandard.Library {2.0.3}
- Uno.UI {2.4.0}
- Microsoft.NETCore.UniversalWindo... {6.2.10}
- Microsoft.Extensions.Logging.Con... {1.1.1}
- Microsoft.Extensions.Logging.Filter {1.1.2}
- Microsoft.UI.Xaml {2.4.0}
- Uno.Core {2.0.0}
推荐答案
Uno 很快将支持以这种方式全局修改主题颜色,当 此 PR 已合并.
Globally modifying theme colors this way will be supported in Uno soon, when this PR is merged.
现在,如果您想使用 Uno 修改配色方案,则需要针对每个控件进行修改.例如对于 ToggleSwitch
你会:
For now if you want to modify the color scheme with Uno, you will need to do it per control. For instance for ToggleSwitch
you would:
- 复制ToggleSwitch 的样式 放入应用中的
ResourceDictionary
文件中(通常放入名为ToggleSwitch.xaml
的独立文件中). - 将其包含在
App.xaml
的 - 修改样式中设置切换开关背景的部分.(它看起来像 这一行:
Fill="{ThemeResource SystemControlHighlightAccentBrush}"
)
Application.Resources
中- Copy the style for ToggleSwitch into a
ResourceDictionary
file in your app (typically into a standalone file calledToggleSwitch.xaml
). - Include it in
Application.Resources
inApp.xaml
- Modify the part of the style that sets the toggle switch's background. (It looks like this line:
Fill="{ThemeResource SystemControlHighlightAccentBrush}"
)
这篇关于无法在 Uno 2.4 上更改 WASM 的强调颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!