我想为少数DataTemplates定义一个共同的外观。因此,我想要一个带有嵌套容器的“外部”DataTemplate,就像这样:
<DataTemplate x:Key="FancyPanel">
<Border>
<Border>
<ScrollViewer>
<!-- the actual container should be here
would a ContentPresenter work? -->
</ScrollViewer>
</Border>
</Border>
</DataTemplate>
<DataTemplate x:Key="FancyFooTemplate" DataType="{x:Type local:Foo}">
<FancyPanel>
<TextBox Text="{Binding Bar}"/> <!-- binds to Foo.Bar -->
</FancyPanel>
</DataTemplate>
当然FancyPanel
不存在,因为它不是控件。我知道我可以从UserControl派生并将边框和scrollviewer放在那里,但我想知道是否可以纯粹使用xaml中的资源。即便如此,我还是要告诉它把孩子放在哪里。(/ p>)