11

ページにいくつかのピボット アイテムがあり、アプリが試用モードかどうかに基づいて、ピボット アイテムの 1 つを表示または非表示にする必要があります。XAML または C# で PivotItem の可視性を直接設定すると、実際の PivotItem 自体ではなく、Pivo​​tItem 内にあるものだけが非表示になります。どうすればこれを達成できますか?

テストでは、次の両方を試しました

Page.xaml

<phone:PivotItem x:Name="PivotItem2" Visibility="Collapsed"
                         Header="2">
                ...
</<phone:PivotItem>

また

Page.xaml.cs

 protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        base.OnNavigatedTo(e);

        //Check trial state and set PivotItem
        if ((Application.Current as App).IsTrial)
        {
            PivotItem2.Visibility = Visibility.Collapsed;
        }
        else
        {
            PivotItem2.Visibility = Visibility.Visible;
        }
    }
4

1 に答える 1

15

Pivot.Items コレクションを使用して、ピボットで PivotItems を動的に削除または追加することしかできません。それらを非表示にすることはできません。あなたの要件に従って、これを行うことができます:

//Check trial state and set PivotItem
if ((Application.Current as App).IsTrial)
{
    PivotControl.Items.Remove(PivotControl.Items.Single(p => ((PivotItem)p).Name == "Name_PivotItem"));
}
else
{
    PivotControl.Items.Add(PivotControl.Items.Single(p => ((PivotItem)p).Name == "Name_PivotItem"));
}
于 2014-11-13T13:56:13.017 に答える