为什么我们能够将DataTemplate
或ControlTemplate
分配给以下标记中Template
类型的ControlTemplate
属性: -
<Style TargetType="ListBox">
<Setter Property="Template">
<Setter.Value>
<!--
Visual Studio Intellisense shows
both ControlTemplate and
DataTemplate here.
-->
</Setter.Value>
</Setter>
</Style>
答案 0 :(得分:0)
我认为答案只是Intellisense不够聪明(实际上对我来说VS2010它显示任何XAML都是有效的,而不仅仅是ControlTemplate和DataTemplate)。 documentation on ListBox表示实际上只有 ControlTemplate 有效。如果您将模板声明为ListBox的直接子项而不是 Style ,则会确认这一点:
<ListBox>
<ListBox.Template>
<!-- Intellisense lists only ControlTemplate here -->
</ListBox.Template>
</ListBox>