我只是想知道是否可以在单个“内联”行中编写这行代码:
<Ellipse MinWidth="10" MinHeight="10" Stroke="Black" StrokeThickness="1">
<Ellipse.Fill>
<SolidColorBrush Color="{Binding Path=SelectedColor, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Primitives:ColorPickerBase}}}" />
</Ellipse.Fill>
</Ellipse>
即。将Fill
定义中的Ellipse
属性设置为新的SolidBrush
,其Color
属性模板已绑定
更新1:Adriano在评论中正确地提到了从ValueConverter
到Color
SolidBrush
的可能性。我知道这种可能性,但我正在寻找一个单线解决方案,而在其他地方没有任何额外的代码。
答案 0 :(得分:1)
您无法执行此操作,因为Ellipse
的填充属性为SolidColorBrush Type
,您拥有的Color Type
用于绑定。所以最后你需要一个converter
可以将颜色转换为SolidColorBrush或者类型为SolidColorBrush的属性。
我认为你使用它的方式不会成为问题。 :)