我有一个wpf Window
,它使用的ResourceDictionary
中定义的SolidColorBrush
已定义。如何将ResourceDictionary中的SolidColorBrush的Color属性绑定到ViewModel Color属性
我可以选择什么颜色设置SolidColorBrush
与它的颜色属性,通过使用像这样的十六进制值:
<SolidColorBrush Color="#FF0000"/>
当我尝试设置这样的:
<SolidColorBrush Color="{Binding UserSelectedColor}"/>
这显然不起作用,因为ResourceDictionary
没有设置DataContext
。
我试图这样做,因为我认为绑定可能会使用DataContext
在使用SolidColorBrush
的Control
上设置,但这似乎不起作用。
所以我不知道我怎么从ViewModel
得到Color
如果我不能设置的ResourceDictionary
你想只在ResourceDictionary中吗? – ethicallogics 2013-03-07 18:24:44
您是否试图实施剥皮?颜色/画笔通常是特定于视图的事物,不一定由ViewModel控制。如果有一组固定的选择,ViewModel可以定义一个标志,View用来决定使用哪一个画笔。 – 2013-03-07 18:35:37
你可以让你的ViewModel暴露一个'Brush'而不是'Color',并让元素直接绑定到ViewModel上的属性? – 2013-03-07 18:43:55