如何解决以编程方式将内容添加到 TabView Xamarin 表单中的 TabViewItem
我在我的项目中使用 TabView。我已经安装了 Xamarin.community.toolkit。
我正在尝试以编程方式而不是 xaml 为 TabViewitem 添加内容,因为 TabViewItem 的每个 ContentView 在它的构造函数中都有服务调用,这会在所有 TabViewItem 一次加载时导致问题。
下面是我的代码:
<xcl:TabView x:Name="MainTabView"
TabStripPlacement="Top">
<xcl:TabViewItem
x:Name="Tab1"
Text="Details"
Margin="16,16,0"
TextColor="Black"
FontFamily="{StaticResource SFProRegular}"
TextColorSelected="Black"
FontSize="15">
</xcl:TabViewItem>
------
</xcl:TabView>
我正在尝试以编程方式将内容添加到 TabViewItem,如下所示(Page1 是一个 ContentView)
var stackPanel = new StackLayout { Orientation = StackOrientation.Vertical };
stackPanel.Children.Add(new Page1());
DetailsTabView.Content = stackPanel;
但 UI 未在我的应用中呈现。
同样的工作如果我添加如下所示的 Page1:
<xcl:TabView x:Name="MainTabView"
TabStripPlacement="Top" >
<xcl:TabViewItem
x:Name="Tab1"
Text="Details"
Margin="16,0"
TextColor="Black"
FontFamily="{StaticResource SFProRegular}"
TextColorSelected="Black"
FontSize="15">
<template:Page1 />
</xcl:TabViewItem>
------
</xcl:TabView>
感谢任何帮助!
解决方法
我正在尝试以编程方式将内容添加到 TabViewItem,如下所示(Page1 是一个 ContentView)
如果你想通过后面的代码在一个TabViewItem中添加一个CONtentview,可以看看:
<xct:TabView
x:Name="mytabview"
TabIndicatorColor="Yellow"
TabStripBackgroundColor="Blue"
TabStripHeight="60"
TabStripPlacement="Bottom">
<xct:TabViewItem
x:Name="tb1"
FontSize="12"
Text="Tab 1"
TextColor="White"
TextColorSelected="Yellow">
<StackLayout />
</xct:TabViewItem>
<xct:TabViewItem
x:Name="tb2"
FontSize="12"
Text="Tab 2"
TextColor="White"
TextColorSelected="Yellow">
</xct:TabViewItem>
</xct:TabView>
然后将 ContentView 添加到 TabViewItem。
public MainPage()
{
InitializeComponent();
mytabview.TabItems[0].Content = new contentview1();
mytabview.TabItems[1].Content = new contentview2();
}
注意:请忘记在 TabViewItem 中通过 xaml 添加 Stacklayout 或其他布局,然后添加 contentview 的代码将生效。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。