Невозможно изменить цвет акцента для WASM на Uno 2.4
Я определил новый цвет акцента в App.xaml, например:
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:
Однако цвет Accent по умолчанию остается синим на странице WASM (Edge Chromium - 81.0.416.77)
Цвет акцента в WASM не соответствует версии UWP, определенной в App.xaml. Должен быть. Как я могу это исправить?
Пакет 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}
1 ответ
Решение
Глобальное изменение цветов темы таким образом вскоре будет поддерживаться в Uno, когда этот PR будет объединен.
На данный момент, если вы хотите изменить цветовую схему с помощью Uno, вам нужно будет сделать это для каждого элемента управления. Например дляToggleSwitch
ты бы:
- Скопируйте стиль ToggleSwitch в
ResourceDictionary
файл в вашем приложении (обычно в отдельный файл с именемToggleSwitch.xaml
). - Включите это в
Application.Resources
вApp.xaml
- Измените часть стиля, устанавливающую фон переключателя. (Похоже, что эта линия:
Fill="{ThemeResource SystemControlHighlightAccentBrush}"
)