我正在开发一个源自ItemsControl
的自定义控件。在generic.xaml文件中,我为该控件创建了样式,并定义了ItemTemplate
:
<Style TargetType="local:MyItemsControl">
<Setter Property="ItemTemplate">
<Setter.Value>
<DataTemplate>
<Border Background="Red">
<!-- Other things in here -->
</Border>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
我想将Background
中Border
的{{1}}属性绑定到DataTemplate
的依赖项属性。
如果在这里发现了几个问题,建议在绑定中使用MyItemsControl
的元素名称,但这仅在定义使用控件的MyItemsControl
时才有效。我还尝试绑定到ItemTemplate
,将RelativeSource
定义为祖先类型。
没有任何效果。我在这里缺少什么?
答案 0 :(得分:3)
DependencyProperty的类型是什么?是Brush
还是string
?
这个简单的代码对我有用:
Background="{Binding Name, RelativeSource={RelativeSource AncestorType=ItemsControl}}"
只是为了测试,我绑定到ItemsControl的Name属性为'Yellow' - 它可以工作。