将XAML定义的内容设置为PivotItem

时间:2013-04-30 17:35:10

标签: c# wpf silverlight windows-phone-7 xaml

我在App.xaml中为PivotItem提供了XAML定义的内容:

<DataTemplate x:Key="cd">
     <!-- Some grids -->
</DataTemplate>

我也定义了Pivot:

<controls:Pivot>
    <controls:PivotItem Header="xxx">
        <!-- Irrelevant -->
    </controls:PivotItem>

    <controls:PivotItem x:Name="MyItem" />
</controls:Pivot>

当我尝试将预定义内容设置为PivotItem时 - 没有任何反应(我看不到内容集)。

MyItem.Content = (Application.Current as App).Resources["cd"] as DataTemplate;

那么,该怎么做?

1 个答案:

答案 0 :(得分:1)

<ContentControl ContentTemplate="{StaticResource cd}" Content="" />

可能会奏效。 DataTemplate永远不会设置为子项,它们被设置为特殊属性,如ContentTemplate。

因为你正在做的事情可能有点不方便和奇怪,你应该使用UserControls。使用它们的常规方法是使用每个文件方法,通过向导添加新的“Silverlight用户控件”。

您真正想要使用DataTemplates的地方是您使用需要数据绑定的事物列表。