首页 > 解决方案 > 在 TabbedPage 栏中添加/删除选项卡并以编程方式更改 app:tabMode

问题描述

在 Xamarin 中,我有一个 TabbedPage,有时应该显示,有时不显示。

<ContentPage x:Name="tab_Voeding5" IsEnabled="False">
    <StackLayout>
        <Label Text="Voeding pagina 5"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>

我尝试在默认情况下禁用它并像这样启用它:

if(Application.Current.Properties["txt_voeding5"].ToString() != "")
{
    tab_Voeding5.IsEnabled = true;
    tab_Voeding5.Title = Application.Current.Properties["txt_voeding5"].ToString();
}

但是,这只会禁用和启用导航栏中选项卡式页面的标题,但我希望它完全删除/添加。我该怎么做呢?

另外,在Tabbar.axml我只想app:tabMode="scrollable"在页面 A 中。我希望它是默认的,例如app:tabMode="fixed". 如何app:tabMode以编程方式更改页面的 CS 文件?

编辑:

Xaml 文件

<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="TimeToSport.Views.VoedingPage"
         Title="Voeding">

<!-- Voeding 1 -->
<ContentPage x:Name="tab_Voeding1">
    <StackLayout>
        <Label Text="Voeding pagina 1"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>

<!-- Voeding 2 -->
<ContentPage x:Name="tab_Voeding2">
    <StackLayout>
        <Label Text="Voeding pagina 2"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>

<!-- Voeding 3 -->
<ContentPage x:Name="tab_Voeding3">
    <StackLayout>
        <Label Text="Voeding pagina 3"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>

<!-- Voeding 4 -->
<ContentPage x:Name="tab_Voeding4">
    <StackLayout>
        <Label Text="Voeding pagina 4"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>

<!-- Voeding 5 -->
<ContentPage x:Name="tab_Voeding5" IsEnabled="False">
    <StackLayout>
        <Label Text="Voeding pagina 5"
            VerticalOptions="CenterAndExpand" 
            HorizontalOptions="CenterAndExpand" />
    </StackLayout>
</ContentPage>
</TabbedPage>

标签: c#xamlxamarin

解决方案


推荐阅读