我正在尝试在我的 XAML 中设置一个配色方案,该配色方案可以通过我的应用程序中的 VB 代码进行更改。我在整个 UI 中使用 Color 和 SolidColorBrush,它们的定义如下:
<Color x:Key="PrimaryColour">#FFF7A619</Color>
<SolidColorBrush x:Key="PrimaryColourBrush" Color="{StaticResource PrimaryColour}"/>
我想在我的 VB 代码中更改我的所有 SolidColorBrush 和 Color 资源以更改配色方案。
我可以像这样成功更改 SolidColorBrushes:
TryCast(App.Current.Resources("PrimaryColourBrush"), SolidColorBrush).Color = ThisTeam.TeamPrimaryColour
在我的 ThisTeam 类中定义了颜色:
Public Property TeamPrimaryColour As Color = Colors.Purple
但我不知道如何对颜色资源做同样的事情。我试过像这样简单地设置资源:
App.Current.Resources("PrimaryColour") = ThisTeam.TeamPrimaryColour
并尝试模仿适用于刷子的 TryCast,但没有运气。我完全迷路了。我尝试过的一切都会导致“NotImplementedException”错误。FWIW 错误总是指向代码中的下一行(即不是试图设置颜色的行),但显然是导致异常的颜色行。
我正在尝试的甚至可能吗?
感谢您的任何帮助或建议。