我有一个刷子作为资源:
<Application.Resources>
<SolidColorBrush x:Key="AppBrush" Color="#FFFFFF"/>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)
我想用它Color
:
<... BackgroundColor="{StaticResource AppBrush.Color}"/>
Run Code Online (Sandbox Code Playgroud)
但这是不可能的,我得到一个xaml损坏错误.我怎样才能做到这一点?
或者在其他方面如何Color
在另一个Color
资源中使用Brush :
<Application.Resources>
<Color x:Key="AppColor">#FFFFFF { here how to use AppBrush.Color?}</Color>
<SolidColorBrush x:Key="AppBrush" Color="#FFFFFF"/>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud) 我想改变肤色,所以这样做:
<Application.Resources>
<Color x:Key="AppColor">#FFFFFF</Color>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)
然后在整个应用程序中使用它,例如:
<...... BackgroundColor="{StaticResource AppColor}" ... />
Run Code Online (Sandbox Code Playgroud)
它工作正常.但是当我试图改变它时,我遇到了一些问题.
Application.Current.Resources["AppColor"] = Color.FromArgb(255, 0, 255, 255);
Run Code Online (Sandbox Code Playgroud)
我得到一个未实现的错误.当我尝试删除它并添加一个新的:
Application.Current.Resources.Remove("AppColor");
var color = Color.FromArgb(255, 0, 255, 255);
Application.Current.Resources.Add("AppColor", color);
Run Code Online (Sandbox Code Playgroud)
我得到了一个xaml错误,就在我使用那个静态值的时候.
我该如何使用颜色并进行更改?