ControlTemplate类型的Template属性同时接受'DataTemplate& amp; ControlTemplate'风格?

时间:2012-05-17 07:35:04

标签: wpf silverlight-4.0 datatemplate controltemplate

为什么我们能够将DataTemplateControlTemplate分配给以下标记中Template类型的ControlTemplate属性: -

<Style TargetType="ListBox">
    <Setter Property="Template">
        <Setter.Value>
            <!--
            Visual Studio Intellisense shows
            both ControlTemplate and 
            DataTemplate here.
            -->
        </Setter.Value>
    </Setter>
</Style>

1 个答案:

答案 0 :(得分:0)

我认为答案只是Intellisense不够聪明(实际上对我来说VS2010它显示任何XAML都是有效的,而不仅仅是ControlTemplate和DataTemplate)。 documentation on ListBox表示实际上只有 ControlTemplate 有效。如果您将模板声明为ListBox的直接子项而不是 Style ,则会确认这一点:

<ListBox>
    <ListBox.Template>
        <!-- Intellisense lists only ControlTemplate here -->
    </ListBox.Template>
</ListBox>