【发布时间】:2018-03-21 14:32:50
【问题描述】:
我正在制作一个带有按钮的视图,我想在点击时更改它们的颜色。 我希望按钮具有默认颜色,并在第一次单击时将其颜色更改为另一种颜色。
为了做到这一点,我想保持它干净,所以我将画笔保存在资源字典中。
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
<SolidColorBrush x:Key="WeekCalendarDefaultCellColor" Color="#FFE5CC"/>
<SolidColorBrush x:Key="WeekCalendarClickCellColor" Color="#FFFF00"/>
</ResourceDictionary>
对于 MVVM,我将按钮画笔绑定到一个属性(如果我自己设置颜色,则绑定有效,但我想在整个应用程序中使用相同的颜色,所以我认为最好从字典中获取)
public SolidColorBrush CurrentBrush =//????;
现在我想将字典中的画笔插入到这个属性中,如何从字典中获取画笔到视图模型?
提前感谢所有帮助者!
【问题讨论】:
-
“我想在整个应用程序中使用相同的颜色,所以我认为最好从字典中获取”。不。反之亦然:想在整个应用程序中使用相同的颜色 -> 将它们放入资源/资源字典中
-
MVVM 并不意味着“将我所有的 UI 代码推入视图模型”。
标签: c# wpf mvvm viewmodel resourcedictionary