Silverlight 跨轴心tems共享网格内容

Silverlight 跨轴心tems共享网格内容,silverlight,windows-phone-7,pivot,Silverlight,Windows Phone 7,Pivot,我想知道是否有可能在不同的数据透视项之间共享网格内容,以便只向Windows Phone中的另一个数据透视项添加一些额外的信息。如果可能的话,请让我知道 更详细地说,我在一个pivot控件上有一个客户输入表单,下一个pivot页面是针对一种特殊类型的客户的,因此他有额外的字段,我们希望让客户感觉不同,但逻辑基本相同 我可以在另一个数据透视项中引用相同的contentGrid吗?否。但是您可以创建自定义UserControl,并将其与相同的数据绑定 这里有一个您可以将此contentGrid放入D

我想知道是否有可能在不同的数据透视项之间共享网格内容,以便只向Windows Phone中的另一个数据透视项添加一些额外的信息。如果可能的话,请让我知道

更详细地说,我在一个pivot控件上有一个客户输入表单,下一个pivot页面是针对一种特殊类型的客户的,因此他有额外的字段,我们希望让客户感觉不同,但逻辑基本相同


我可以在另一个数据透视项中引用相同的contentGrid吗?

否。但是您可以创建自定义UserControl,并将其与相同的数据绑定


这里有一个您可以将此
contentGrid
放入
DataTemplate
中,然后使用不同的透视页面引用相同的
DataTemplate
。您可能需要为每个pivot页面创建一个
ContentControl
,如下所示

<phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Key="CustomerDataTemplate">
        <Grid x:Name="contentGrid">
        ...
        </Grid>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

    <controls:Pivot Title="MY APPLICATION">
        <!--Pivot item one-->
        <controls:PivotItem Header="item1">
            <ContentControl Content="{Binding CustomerOneData}" ContentTemplate="{StaticResource CustomerDataTemplate}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"/>
        </controls:PivotItem>

        <!--Pivot item two-->
        <controls:PivotItem Header="item2">
            <ContentControl Content="{Binding CustomerTwoData}" ContentTemplate="{StaticResource CustomerDataTemplate}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"/>
        </controls:PivotItem>
    </controls:Pivot>

...

那么你有两个选择。首先,您可以在DataTemplate中定义所有控件,然后根据客户类型显示/隐藏某些控件。或者你可以为共享控件创建这个
DataTemplate
,然后把那些额外的控件放到
ContentControl
之外。谢谢,不过我是用UserControl实现的。稍后我们将对此进行调查。