2

我正在尝试在我的 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 错误总是指向代码中的下一行(即不是试图设置颜色的行),但显然是导致异常的颜色行。

我正在尝试的甚至可能吗?

感谢您的任何帮助或建议。

4

1 回答 1

1

你应该看看 Coding4Fun 工具包:

Coding4Fun 工具包

它包含 3 个允许选择/选择颜色的工具。

  • 颜色六边形选择器
  • 选色器
  • 颜色滑块
于 2012-10-04T13:59:11.367 回答