TabbedPage 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。
[Xamarin.Forms.RenderWith(typeof(Xamarin.Forms.Platform._TabbedPageRenderer))]
public class TabbedPage : Xamarin.Forms.MultiPage<Xamarin.Forms.Page>, Xamarin.Forms.IElementConfiguration<Xamarin.Forms.TabbedPage>
type TabbedPage = class
inherit MultiPage<Page>
interface IElementConfiguration<TabbedPage>
- 继承
- 属性
- 实现
注解
选项卡式页面的用户界面由选项卡列表和较大的详细信息区域组成。 在 iOS 上,选项卡的列表显示在屏幕的底部,而详细信息区域显示在上方。 在 Android 和Windows手机上,选项卡显示在屏幕顶部。 如果用户的集合太大而无法容纳在一个屏幕上,则用户可以滚动屏幕顶部的选项卡集合。
应用开发人员可以通过两种方式之一创建选项卡式页面。 首先,应用程序开发人员可以将单个类或其子类的对象列表分配给该属性,ItemsSource并为属性分配一个DataTemplateItemTemplate属性,以返回最不派生类型的对象的页。 其次,应用开发人员可以向属性添加一 Page 系列对象 Children 。 下面的代码示例中显示了这两种方法。
以下示例代码根据可在示例应用程序页上找到的 FormsGallery 示例的简洁性而改编,演示如何通过向属性分配DataTemplateItemTemplate特定类型来显示特定类型的数据。 请注意如何 NamedColorPage 通过绑定其字段来获取其 ColorProperty 颜色。
using System;
using Xamarin.Forms;
namespace MinimalTabbed
{
class TabbedPageDemoPage : TabbedPage
{
public TabbedPageDemoPage ()
{
this.Title = "TabbedPage";
this.ItemsSource = new NamedColor[] {
new NamedColor ("Red", Color.Red),
new NamedColor ("Yellow", Color.Yellow),
new NamedColor ("Green", Color.Green),
new NamedColor ("Aqua", Color.Aqua),
new NamedColor ("Blue", Color.Blue),
new NamedColor ("Purple", Color.Purple)
};
this.ItemTemplate = new DataTemplate (() => {
return new NamedColorPage ();
});
}
}
// Data type:
class NamedColor
{
public NamedColor (string name, Color color)
{
this.Name = name;
this.Color = color;
}
public string Name { private set; get; }
public Color Color { private set; get; }
public override string ToString ()
{
return Name;
}
}
// Format page
class NamedColorPage : ContentPage
{
public NamedColorPage ()
{
// This binding is necessary to label the tabs in
// the TabbedPage.
this.SetBinding (ContentPage.TitleProperty, "Name");
// BoxView to show the color.
BoxView boxView = new BoxView {
WidthRequest = 100,
HeightRequest = 100,
HorizontalOptions = LayoutOptions.Center
};
boxView.SetBinding (BoxView.ColorProperty, "Color");
// Build the page
this.Content = boxView;
}
}
}
以下示例创建包含两 ContentPage 个实例的选项卡式视图。
class TabbedPageDemoPage2 : TabbedPage
{
public TabbedPageDemoPage2 ()
{
this.Title = "TabbedPage";
this.Children.Add (new ContentPage
{
Title = "Blue",
Content = new BoxView
{
Color = Color.Blue,
HeightRequest = 100f,
VerticalOptions = LayoutOptions.Center
},
}
);
this.Children.Add (new ContentPage {
Title = "Blue and Red",
Content = new StackLayout {
Children = {
new BoxView { Color = Color.Blue },
new BoxView { Color = Color.Red}
}
}
});
}
}

构造函数
| 名称 | 说明 |
|---|---|
| TabbedPage() |
新建具有默认值的 TabbedPage 元素。 |
字段
| 名称 | 说明 |
|---|---|
| ActionSheetSignalName |
此方法供内部使用。 (继承自 Page) |
| AlertSignalName |
此方法供内部使用。 (继承自 Page) |
| BarBackgroundColorProperty |
BarBackgroundColor 属性的后备存储。 |
| BarBackgroundProperty |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 |
| BarTextColorProperty |
BarTextColor 属性的后备存储。 |
| BusySetSignalName |
此方法供内部使用。 (继承自 Page) |
| PromptSignalName |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 Page) |
| SelectedTabColorProperty |
字段的后盾存储 SelectedTabColor 。 |
| UnselectedTabColorProperty |
字段的后盾存储 UnselectedTabColor 。 |
属性
| 名称 | 说明 |
|---|---|
| AnchorX |
获取或设置相对于元素边界的任何转换的中心点的 X 组件。 这是一种可绑定属性。 (继承自 VisualElement) |
| AnchorY |
获取或设置相对于元素边界的任何转换的中心点的 Y 分量。 这是一种可绑定属性。 (继承自 VisualElement) |
| AutomationId |
获取或设置允许自动化框架查找此元素并与其交互的值。 (继承自 Element) |
| Background |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 VisualElement) |
| BackgroundColor |
获取或设置将填充 VisualElement 背景的颜色。 这是一种可绑定属性。 (继承自 VisualElement) |
| BackgroundImage |
已过时.
标识用作背景的图像 Page。 (继承自 Page) |
| BackgroundImageSource |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 Page) |
| BarBackground |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 |
| BarBackgroundColor |
获取或设置条的背景色。 |
| BarTextColor |
获取或设置条形图上的文本颜色。 |
| Batched |
供Xamarin内部使用。窗体平台。 (继承自 VisualElement) |
| Behaviors |
获取与此元素关联的行为列表。 这是一种可绑定属性。 (继承自 VisualElement) |
| BindingContext |
获取或设置一个对象,该对象包含由属于此 BindableObject属性的绑定属性所面向的属性。 (继承自 BindableObject) |
| Bounds |
获取元素的边界。 (继承自 VisualElement) |
| Children |
获取 MultiPage 的子元素的 IList<页> 。 (继承自 MultiPage<T>) |
| class |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 NavigableElement) |
| ClassId |
获取或设置用于标识语义相似元素集合的值。 (继承自 Element) |
| Clip |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 VisualElement) |
| ContainerArea |
供Xamarin内部使用。窗体平台。 (继承自 Page) |
| CurrentPage |
获取或设置当前选定的页面。 (继承自 MultiPage<T>) |
| DisableLayout |
供Xamarin内部使用。窗体平台。 (继承自 VisualElement) |
| Dispatcher |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 BindableObject) |
| EffectControlProvider |
供Xamarin内部使用。窗体平台。 (继承自 Element) |
| Effects |
应用于此项的效果的列表。 (继承自 Element) |
| FlowDirection |
获取或设置布局流方向。 (继承自 VisualElement) |
| Height |
获取此元素的当前呈现高度。 这是一种只读可绑定属性。 (继承自 VisualElement) |
| HeightRequest |
获取或设置此元素所需的高度替代。 (继承自 VisualElement) |
| Icon |
已过时.
关联的图标的资源标识符 Page。 (继承自 Page) |
| IconImageSource |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 Page) |
| Id |
获取一个值,该值可用于通过应用程序运行唯一标识元素。 (继承自 Element) |
| IgnoresContainerArea |
供Xamarin内部使用。窗体平台。 (继承自 Page) |
| InputTransparent |
获取或设置一个值,该值指示是否应在用户交互周期中涉及此元素。 这是一种可绑定属性。 (继承自 VisualElement) |
| InternalChildren |
供Xamarin内部使用。窗体平台。 (继承自 Page) |
| IsBusy |
将页面标记为忙碌。 这会导致特定于平台的全局活动指示器显示忙碌状态。 (继承自 Page) |
| IsEnabled |
获取或设置一个值,该值指示是否在用户界面中启用此元素。 这是一种可绑定属性。 (继承自 VisualElement) |
| IsFocused |
获取一个值,该值指示当前是否聚焦此元素。 这是一种可绑定属性。 (继承自 VisualElement) |
| IsInNativeLayout |
供Xamarin内部使用。窗体平台。 (继承自 VisualElement) |
| IsNativeStateConsistent |
供Xamarin内部使用。窗体平台。 (继承自 VisualElement) |
| IsPlatformEnabled |
供Xamarin内部使用。窗体平台。 (继承自 VisualElement) |
| IsTabStop |
获取或设置一个值,该值指示此元素是否包含在选项卡导航中。 这是一种可绑定属性。 (继承自 VisualElement) |
| IsVisible |
获取或设置一个值,该值确定此元素是否应是可视化树的一部分。 这是一种可绑定属性。 (继承自 VisualElement) |
| ItemsSource |
要显示的项的源。 (继承自 MultiPage<T>) |
| ItemTemplate |
用于显示项的模板。 (继承自 MultiPage<T>) |
| LogicalChildren |
供Xamarin内部使用。窗体平台。 (继承自 Element) |
| MinimumHeightRequest |
获取或设置一个值,该值覆盖元素在布局期间请求的最小高度。 (继承自 VisualElement) |
| MinimumWidthRequest |
获取或设置一个值,该值覆盖元素在布局期间请求的最小宽度。 (继承自 VisualElement) |
| Navigation |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 NavigableElement) |
| NavigationProxy |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 NavigableElement) |
| Opacity |
获取或设置呈现元素时应用于元素的不透明度值。 这是一种可绑定属性。 (继承自 VisualElement) |
| Padding |
内容 Page 与边框之间的空间。 (继承自 Page) |
| Parent |
获取或设置元素的父元素。 (继承自 Element) |
| ParentView |
已过时.
获取作为此元素最接近的上级元素的 VisualElement元素。 (继承自 Element) |
| Platform |
已过时.
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 Element) |
| RealParent |
供Xamarin内部使用。窗体平台。 (继承自 Element) |
| Resources |
获取或设置本地资源字典。 (继承自 VisualElement) |
| Rotation |
获取或设置呈现元素时围绕 Z 轴(仿射旋转)的旋转角度(以度为单位)。 (继承自 VisualElement) |
| RotationX |
获取或设置呈现元素时围绕 X 轴(透视旋转)的旋转角度(以度为单位)。 (继承自 VisualElement) |
| RotationY |
获取或设置呈现元素时围绕 Y 轴(透视旋转)的旋转角度(以度为单位)。 (继承自 VisualElement) |
| Scale |
获取或设置应用于元素的比例因子。 (继承自 VisualElement) |
| ScaleX |
获取或设置要应用于 X 方向的缩放值。 (继承自 VisualElement) |
| ScaleY |
获取或设置要应用于 Y 方向的缩放值。 (继承自 VisualElement) |
| SelectedItem |
当前选定的项。 (继承自 MultiPage<T>) |
| SelectedTabColor |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 |
| Style |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 NavigableElement) |
| StyleClass |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 NavigableElement) |
| StyleId |
获取或设置用于唯一地标识元素的用户定义的值。 (继承自 Element) |
| TabIndex |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 VisualElement) |
| Title |
标题 Page。 (继承自 Page) |
| ToolbarItems |
一组 ToolbarItem以特定于平台的方式实现。 (继承自 Page) |
| TranslationX |
获取或设置元素的 X 转换增量。 (继承自 VisualElement) |
| TranslationY |
获取或设置元素的 Y 转换增量。 (继承自 VisualElement) |
| Triggers |
获取与此元素关联的触发器列表。 这是一种可绑定属性。 (继承自 VisualElement) |
| UnselectedTabColor |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 |
| Visual |
MultiPage<T> 显示屏幕顶部的选项卡数组,每个选项卡都会将内容加载到屏幕上。 (继承自 VisualElement) |
| Width |
获取此元素的当前呈现宽度。 这是一种只读可绑定属性。 (继承自 VisualElement) |
| WidthRequest |
获取或设置此元素的所需宽度重写。 (继承自 VisualElement) |
| X |
获取此元素的当前 X 位置。 这是一种只读可绑定属性。 (继承自 VisualElement) |
| Y |
获取此元素的当前 Y 位置。 这是一种只读可绑定属性。 (继承自 VisualElement) |
方法
活动
显式接口实现
| 名称 | 说明 |
|---|---|
| IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
供Xamarin内部使用。窗体平台。 (继承自 BindableObject) |
| IElementController.SetValueFromRenderer(BindableProperty, Object) |
供Xamarin内部使用。窗体平台。 (继承自 Element) |
| IItemsView<T>.CreateDefault(Object) |
供Xamarin内部使用。窗体平台。 (继承自 MultiPage<T>) |
| IItemsView<T>.SetupContent(T, Int32) |
供Xamarin内部使用。窗体平台。 (继承自 MultiPage<T>) |
| IItemsView<T>.UnhookContent(T) |
供Xamarin内部使用。窗体平台。 (继承自 MultiPage<T>) |
| INameScope.RegisterName(String, Object) |
仅供内部使用。 (继承自 Element) |
| IVisualElementController.EffectiveFlowDirection |
获取平台上元素的有效视觉流方向,同时考虑区域设置和逻辑流设置。 (继承自 VisualElement) |
| IVisualElementController.InvalidateMeasure(InvalidationTrigger) |
此方法供内部使用。 (继承自 VisualElement) |