【发布时间】:2013-08-27 18:39:36
【问题描述】:
在我的 XAML 中我有这个:
<Color x:Key="VeryLightGrey">#fff0f0f0</Color>
<Color x:Key="TabBackgroundColor">#fff0f0f0</Color>
我很想拥有这样的东西:
<Color x:Key="TabBackgroundColor" Color="{StaticResource VeryLightGrey}"/>
我尝试了各种方法,包括:
<StaticResource x:Key="TabBackgroundColor" ResourceKey="VeryLightGrey"/>
但是我的代码充满了警告:
“System.Wndows.StaticResourceExtention 类型的对象不能应用于需要 System.Windows.Media.Color 类型的属性”
其他帖子说忽略这个警告,但它实际上会导致问题,所以我不能。
有没有更好的解决方案?
【问题讨论】:
-
什么?为什么要这样复制资源?
-
因为我希望能够将verylightgrey 分配给tabbackground,而不是数字#fff 等。我还希望将颜色定义为灰色,而不仅仅是颜色刷。真的不是重复,它让人们更容易理解,也更容易以后改变颜色
-
并非如此。您似乎误解了 XAML 资源的工作原理。使用@Emo 的回答中提到的画笔。