Xamarin.Forms 命名空间

跨平台且受本机支持 UI 工具包。

AbsoluteLayout

将子元素放在绝对位置。

Accelerator

表示 MenuItem 的快捷键。

AcceleratorTypeConverter

XAML 分析器用于将字符串转换为 Accelerator 对象的类。

ActivityIndicator

用于表示某事正在进行的可视控件。

AdaptiveTrigger

跨平台且受本机支持 UI 工具包。

Animation

封装动画,此函数集合在用户可察觉的时间段内修改属性。

AnimationExtensions

IAnimatable 对象的扩展方法。

Application

表示跨平台移动应用程序的类。

AppLinkEntry

应用链接搜索索引中的深层应用程序链接。

AppThemeChangedEventArgs

跨平台且受本机支持 UI 工具包。

AutomationProperties

包含提供给辅助功能服务的缩写 UI 和详细 UI。

BackButtonBehavior

指定与 Shell 应用程序后退按钮关联的行为的 BindableObject

BackButtonPressedEventArgs

仅限内部使用。 包含按下后退按钮时引发的事件的参数。

BaseMenuItem

菜单项的基类。

BaseShellItem

NavigableElementShellGroupItemShellContent 的基类。

BaseSwipeEventArgs

跨平台且受本机支持 UI 工具包。

Behavior

可响应任意条件和事件的通用用户定义行为的基类。

Behavior<T>

用于广义用户定义行为的泛型基类可以响应任意条件和事件。

BindableLayout

指定附加属性的静态类,可允许 Layout<T> 使用数据绑定 IEnumerable

BindableObject

通过启用验证、类型强制转换和事件系统,提供一种机制,应用程序开发者可以通过该机制将对一个对象中的数据所做的更改传播到另一个对象。 BindableProperty.

BindableObjectExtensions

包含 BindableObject 的便利的扩展方法。

BindableProperty

BindableProperty 是允许在 BindableObject 上绑定的属性的后备存储。

BindablePropertyConverter

可绑定属性的 TypeConverter

BindablePropertyKey

BindableProperty 的密钥,用于通过受限制的写入访问权限实现 BindableProperty。

Binding

单个 1:1 不可变数据绑定。

BindingBase

提供 BindingMode 和格式设置选项的抽象类。

BindingCondition

表示与任意绑定的目标进行值比较的类。

BindingTypeConverter

从字符串转换为 Binding 对象的类型转换器。

BoundsConstraint

RelativeLayout 使用的边界布局约束。

BoundsTypeConverter

TypeConverter它将字符串转换为 Rectangle 以便与 AbsoluteLayout 一起使用。

BoxView

用于绘制纯色矩形的 View

Brush

跨平台且受本机支持 UI 工具包。

BrushTypeConverter

跨平台且受本机支持 UI 工具包。

BrushTypeConverter.GradientBrushParser

跨平台且受本机支持 UI 工具包。

Button

对触摸事件做出响应的按钮 View

Button.ButtonContentLayout

控制 Button 上文本和图像的相对位置和间距。

Button.ButtonContentTypeConverter

XAML 分析器用于将字符串转换为 Button.ButtonContentLayout 对象的类。

CarouselLayoutTypeConverter

跨平台且受本机支持 UI 工具包。

CarouselPage

一个页面,用户可从一侧轻扫到另一侧以显示内容页,就像库一样。

CarouselView

其可滚动子视图“对齐”到位的 ItemsView

Cell

为所有 Xamarin.Forms 单元提供基类和功能。 单元是要添加到 ListViewTableView 的元素。

CheckBox

跨平台且受本机支持 UI 工具包。

CheckedChangedEventArgs

CheckBoxCheckedChanged 事件的事件参数。

ChildGestureRecognizer

用作另一个子级的手势识别器。

ClickedEventArgs

Click 事件的事件参数。

ClickGestureRecognizer

单击手势的识别器。

CollectionView

表示项集合的 SelectableItemsView

ColorTypeConverter

从字符串转换为 ColorTypeConverter

ColumnDefinition

定义 Grid 中的列的属性的 IDefinition

ColumnDefinitionCollection

ColumnDefinitionDefinitionCollection<T>

ColumnDefinitionCollectionTypeConverter

跨平台且受本机支持 UI 工具包。

Command

定义一个包装 ActionICommand 实现。

Command<T>

定义包含泛型 Action<T> 的 ICommand 实现。

CompareStateTrigger

跨平台且受本机支持 UI 工具包。

CompressedLayout

包含省略冗余呈现器的附加属性。

Condition

条件的基类。

Configuration<TPlatform,TElement>

实用工具类,用于检索元素特定于平台的版本。

Constraint

RelativeLayout 使用的布局约束。

ConstraintExpression

定义约束关系。

ConstraintTypeConverter

从字符串转换为 ConstraintTypeConverter

ContentPage

显示单个视图的 Page

ContentPresenter

模板化视图的布局管理器。

ContentPropertyAttribute

指示作为(默认)内容属性的类型的属性。

ContentView

包含单个子元素的元素。

ControlTemplate

为控件指定一组样式和效果的模板。

CornerRadiusTypeConverter

可将字符串转换为 CornerRadiusTypeConverter 子类。

CurrentItemChangedEventArgs

跨平台且受本机支持 UI 工具包。

DataPackage

跨平台且受本机支持 UI 工具包。

DataPackagePropertySet

跨平台且受本机支持 UI 工具包。

DataPackagePropertySetView

跨平台且受本机支持 UI 工具包。

DataPackageView

跨平台且受本机支持 UI 工具包。

DataTemplate

多个绑定的模板,通常由 ListViewMultiPage<T> 使用。

DataTemplateSelector

按数据类型和容器选择 DataTemplate 对象。

DataTrigger

表示任意绑定条件的类,以及满足条件时将应用的 Setter 对象列表。

DateChangedEventArgs

DateSelected 事件的事件参数。

DatePicker

允许选择日期的 View

DefinitionCollection<T>

IDefinition 参数化的集合。 ColumnDefinitionCollectionRowDefinitionCollection 的基类。

DependencyAttribute

指示指定类型可提供所需接口的具体实现的属性。

DependencyService

提供 Get<T>(DependencyFetchTarget) 工厂方法的静态类,用于检索指定类型 T 的特定于平台的实现。

DesignMode

开发人员可使用该静态类来确定应用程序是否在预览程序中运行。

Device

用于与当前设备/平台进行交互的实用程序类。

Device.Styles

将特定于设备的样式公开为静态字段的类。

DeviceStateTrigger

跨平台且受本机支持 UI 工具包。

DoubleCollection

跨平台且受本机支持 UI 工具包。

DoubleCollectionConverter

跨平台且受本机支持 UI 工具包。

DragEventArgs

跨平台且受本机支持 UI 工具包。

DragGestureRecognizer

跨平台且受本机支持 UI 工具包。

DragStartingEventArgs

跨平台且受本机支持 UI 工具包。

DropCompletedEventArgs

跨平台且受本机支持 UI 工具包。

DropEventArgs

跨平台且受本机支持 UI 工具包。

DropGestureRecognizer

跨平台且受本机支持 UI 工具包。

Easing

以非线性的方式修改值的函数,通常用于动画。

EasingTypeConverter

跨平台且受本机支持 UI 工具包。

Editor

可以编辑多行文本的控件。

Effect

可以在运行时添加到元素的样式和属性的集合。

EffectiveFlowDirectionExtensions

扩展方法,用于确定流方向及其是否已显式设置。

EffectiveVisualExtensions

跨平台且受本机支持 UI 工具包。

Element

为所有 Xamarin.Forms 分层元素提供基类。 此类包含表示 Xamarin.Forms 层次结构中的元素所需的所有方法和属性。

ElementEventArgs

提供与单个 Element 相关的事件的数据。

ElementTemplate

DataTemplateControlTemplate 类的基类。

EmbeddedFont

跨平台且受本机支持 UI 工具包。

Entry

可以编辑单个文本行的控件。

EntryCell

带有标签和单行文本输入字段的 Cell

EventTrigger

表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。

ExportEffectAttribute

使用唯一标识符识别 Effect 的特性,可与 Resolve(String) 配合使用以查找效果。

ExportFontAttribute

跨平台且受本机支持 UI 工具包。

FileImageSource

从文件中读取图像的 ImageSource

FileImageSourceConverter

转换为 FileImageSourceTypeConverter

FlexAlignContentTypeConverter

将子内容行对齐样式的字符串表示形式转换为 FlexAlignContent

FlexAlignItemsTypeConverter

将子内容对齐样式的字符串表示形式转换为 FlexAlignItems

FlexAlignSelfTypeConverter

将对齐重写的字符串表示形式转换为 FlexAlignSelf

FlexBasis.FlexBasisTypeConverter

将弹性基础的字符串表示形式转换为 FlexBasis

FlexDirectionTypeConverter

将行/列弹性布局方向的字符串表示形式转换为 FlexDirection

FlexJustifyTypeConverter

将子元素对齐样式的字符串表示形式转换为 FlexJustify

FlexLayout

类似 Flexbox 的布局,用于在子元素的可选可换行的行或列中布置子元素。

FlexWrapTypeConverter

将环绕样式的字符串表示形式转换为 FlexWrap

FlowDirectionConverter

将流方向的字符串表示形式转换为 FlowDirection

FlyoutItem

包含 Tab 对象集合的 ShellItem

FlyoutPage

跨平台且受本机支持 UI 工具包。

FocusEventArgs

VisualElementFocusedUnfocused 事件的事件参数。

FontAttributesConverter

将字符串转换为 FontAttributes 对象。

FontFile

跨平台且受本机支持 UI 工具包。

FontImageSource

跨平台且受本机支持 UI 工具包。

FontSizeConverter

将字符串转换为字号。

FontTypeConverter

从字符串转换为 FontTypeConverter

FormattedString

表示某些部分应用了一些特性的文本。

Frame

包含一个子元素的元素,并具有一些帧选项。

GestureElement

可以响应手势的元素。

GestureRecognizer

所有动作识别器的基类。

GradientBrush

跨平台且受本机支持 UI 工具包。

GradientStop

跨平台且受本机支持 UI 工具包。

GradientStopCollection

跨平台且受本机支持 UI 工具包。

Grid

用于按行和列排列视图的布局。

GridItemsLayout

跨平台且受本机支持 UI 工具包。

GridLengthTypeConverter

从字符串转换为 GridLengthTypeConverter

GroupableItemsView

跨平台且受本机支持 UI 工具包。

HandlerAttribute

一个抽象属性,其子类指定 Xamarin.Forms 抽象控件特定于平台的呈现器。

HtmlWebViewSource

绑定到 HTML 格式字符串的 WebViewSource。

Image

保存图像的 View

ImageButton

跨平台且受本机支持 UI 工具包。

ImageCell

包含图像的 TextCell

ImageSource

抽象类,其实现器从文件或 Web 加载图像。

ImageSourceConverter

该类采用图像文件地址的字符串表示形式,并从指定资源返回 ImageSource

IndicatorView

跨平台且受本机支持 UI 工具包。

InputView

可以接受键盘输入的视图的基类。

InvalidNavigationException

跨平台且受本机支持 UI 工具包。

ItemsLayout

跨平台且受本机支持 UI 工具包。

ItemsLayoutTypeConverter

跨平台且受本机支持 UI 工具包。

ItemsView

用作包含项的模板化列表的视图的基类的 View

ItemsView<TVisual>

包含项的模板化列表的视图的基类。

ItemsViewScrolledEventArgs

跨平台且受本机支持 UI 工具包。

ItemTappedEventArgs

ItemTapped 事件的事件参数。

ItemVisibilityEventArgs

ListView 中更改项可见性时的事件参数。

Keyboard

专用键盘的默认键盘和基类,例如电话号码、电子邮件和 URL 的默认键盘和基类。

KeyboardTypeConverter

将字符串转换为 KeyboardTypeConverter

Label

显示文本的 View

Layout

为所有 Layout 元素提供基类。 使用 Layout 元素定位 Xamarin.Forms 应用程序中的子元素并调整其大小。

Layout<T>

具有未定义行为和多个子级的布局的基实现。

LayoutOptionsConverter

采用 LayoutOptions 的字符串表示形式并返回相应的 LayoutOptions 的类。

LinearGradientBrush

跨平台且受本机支持 UI 工具包。

LinearItemsLayout

跨平台且受本机支持 UI 工具包。

ListProxyChangedEventArgs

跨平台且受本机支持 UI 工具包。

ListStringTypeConverter

键入转换器,将格式正确的字符串列表转换为列表。

ListView

以垂直列表的形式显示数据集合的 ItemsView<TVisual>

MarshalingObservableCollection

跨平台且受本机支持 UI 工具包。

MasterDetailPage

管理两个信息窗格的 Page:显示高级别数据的母版页,以及显示母版中信息的低级别详细信息的详细信息页面。

Menu

表示支持它们的平台上的应用程序菜单。

MenuItem

显示菜单项并将其与命令关联的类。

MenuItemCollection

一组相关的 MenuItem 对象。

MessagingCenter

将订阅服务器上的回调与特定消息名称相关联。

ModalEventArgs

ModalPushedEventArgsModalPushingEventArgsModalPoppedEventArgsModalPoppingEventArgs 的基类。

ModalPoppedEventArgs

从导航堆栈弹出模式窗口时所引发事件的参数。

ModalPoppingEventArgs

从导航堆栈弹出模式窗口时所引发事件的参数。

ModalPushedEventArgs

将模式窗口推送到导航堆栈时引发的事件的参数。

ModalPushingEventArgs

将模式窗口推送到导航堆栈时引发的事件的参数。

MultiBinding

跨平台且受本机支持 UI 工具包。

MultiPage<T>

包含多个子页面的页面的可绑定的模板化基类。

MultiTrigger

表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。

NamedPlatformColor

跨平台且受本机支持 UI 工具包。

NameScopeExtensions

Element 扩展方法添加强类型 FindByName 方法。

NavigableElement

支持导航的 Element

NavigationEventArgs

NavigationPage 导航事件的 EventArgs。

NavigationPage

管理其他页面堆栈的导航和用户体验的 Page

On

在平台上指定值时,在 XAML 中的标记中使用的 OnPlatform 类。

OnIdiom<T>

为当前的目标习惯用语的 T 提供特定于习惯用语的值。

OnPlatform<T>

为当前 OS 提供特定于平台的 T 实现。

OpenGLView

显示 OpenGL 内容的 View

OpenSwipeEventArgs

跨平台且受本机支持 UI 工具包。

OrientationStateTrigger

跨平台且受本机支持 UI 工具包。

Page

占据整个屏幕的 VisualElement

PanGestureRecognizer

用于平移大于其父级视图的内容的手势识别器。

PanUpdatedEventArgs

平移手势更新时引发的事件。

Picker

用于在列表中选取元素的 View

PinchGestureRecognizer

缩小手势的识别器。

PinchGestureUpdatedEventArgs

PinchUpdated 事件的事件参数。

PlatformEffect<TContainer,TControl>

特定于平台的效果类的基类。

PointTypeConverter

将字符串转换为 PointTypeConverter

PoppedToRootEventArgs

NavigationPage 的 PoppedToRoot 导航事件的 EventArgs。

PositionChangedEventArgs

跨平台且受本机支持 UI 工具包。

ProgressBar

显示进度的 View 控件。

PropertyChangingEventArgs

PropertyChangingEventHandler 委托的事件参数。

PropertyCondition

表示与包含封闭 MultiTrigger 的控件上的属性进行值比较的类。

QueryPropertyAttribute

跨平台且受本机支持 UI 工具包。

RadialGradientBrush

跨平台且受本机支持 UI 工具包。

RadioButton

跨平台且受本机支持 UI 工具包。

RadioButtonGroup

跨平台且受本机支持 UI 工具包。

RectangleTypeConverter

将字符串转换为 RectangleTypeConverter

RectTypeConverter

跨平台且受本机支持 UI 工具包。

ReferenceTypeConverter

供 Xamarin.Forms 平台内部使用。

RefreshView

跨平台且受本机支持 UI 工具包。

RelativeBindingSource

跨平台且受本机支持 UI 工具包。

RelativeLayout

使用 Constraint 布局及其子级的 Layout<T>

RenderWithAttribute

将视图与呈现器相关联。

ResolutionGroupNameAttribute

标识组名的属性,通常是公司名称或反向公司 URL,提供了效果名称的作用域。

ResourceDictionary

可将标识符字符串映射到任意资源对象的 IDictionary。

ResourceDictionary.RDSourceTypeConverter

供 Xamarin.Forms 平台内部使用。

RouteFactory

跨平台且受本机支持 UI 工具包。

Routing

跨平台且受本机支持 UI 工具包。

RoutingEffect

包装内部效果的独立于平台的效果,通常是特定于平台的。

RowDefinition

定义 IDefinition 中的行的属性的 Grid

RowDefinitionCollection

RowDefinitionDefinitionCollection<T>

RowDefinitionCollectionTypeConverter

跨平台且受本机支持 UI 工具包。

ScrolledEventArgs

滚动窗口时所引发的事件的参数。

ScrollToRequestedEventArgs

请求滚动时引发的事件的参数。

ScrollToRequestEventArgs

跨平台且受本机支持 UI 工具包。

ScrollView

内容需要时可滚动的元素。

SearchBar

用于提供搜索框的 View 控件。

SearchHandler

ISearchHandlerController 的默认实现。

SelectableItemsView

跨平台且受本机支持 UI 工具包。

SelectedItemChangedEventArgs

ItemSelected 事件的事件参数。

SelectedPositionChangedEventArgs

位置滚动事件的事件参数。

SelectionChangedEventArgs

跨平台且受本机支持 UI 工具包。

Setter

表示将某属性分配给某值,通常是样式或对触发的响应。

SettersExtensions

定义 IList<Setter> 的扩展方法

Shell

一个 Page,提供大多数应用程序需要的基本 UI 功能,让你能够专注于处理应用程序的核心工作负载。

ShellAppearance

跨平台且受本机支持 UI 工具包。

ShellContent

对应 ShellSection 中包含的 ContentPage

ShellGroupItem

包含 FlyoutDisplayOptionsBaseShellItemShellItemShellSection 的基类。

ShellItem

浮出控件中的一个或多个项。 包含在 Shell 内。

ShellNavigatedEventArgs

OnNavigated(ShellNavigatedEventArgs) 事件的参数。

ShellNavigatingDeferral

跨平台且受本机支持 UI 工具包。

ShellNavigatingEventArgs

OnNavigating(ShellNavigatingEventArgs) 事件的参数。

ShellNavigationState

一个 URI,表示 Shell 应用程序中的当前页或导航目标。

ShellSection

Shell 应用程序中的分组内容,可使用底部选项卡进行导航。

SizeTypeConverter

可将字符串转换为 Size 对象的 TypeConverter

Slider

输入线性值的 View 控件。

SolidColorBrush

跨平台且受本机支持 UI 工具包。

Span

表示 FormattedString 的一个部分。

StackLayout

在单个垂直或水平行中定位子元素的 Layout<T>

StateTrigger

跨平台且受本机支持 UI 工具包。

StateTriggerBase

跨平台且受本机支持 UI 工具包。

Stepper

输入离散值的 View 控件,有范围限制。

StreamImageSource

Stream 加载图像的 ImageSource

StructuredItemsView

跨平台且受本机支持 UI 工具包。

Style

包含触发器、资源库和行为的类,这些所含内容将完全或部分定义可视元素类的外观和行为。

SwipeChangingEventArgs

跨平台且受本机支持 UI 工具包。

SwipedEventArgs

轻扫事件的参数。

SwipeEndedEventArgs

跨平台且受本机支持 UI 工具包。

SwipeGestureRecognizer

轻扫手势的识别器。

SwipeItem

跨平台且受本机支持 UI 工具包。

SwipeItems

跨平台且受本机支持 UI 工具包。

SwipeItemView

跨平台且受本机支持 UI 工具包。

SwipeStartedEventArgs

跨平台且受本机支持 UI 工具包。

SwipeView

跨平台且受本机支持 UI 工具包。

Switch

提供已切换的值的 View 控件。

SwitchCell

带有标签和打开/关闭开关的 Cell

Tab

跨平台且受本机支持 UI 工具包。

TabBar

跨平台且受本机支持 UI 工具包。

TabbedPage

显示屏幕顶部多个选项卡的 MultiPage<T>,其中每个都将内容加载到屏幕上。

TabIndexExtensions

支持选项卡索引的迭代和检索的扩展方法。

TableRoot

包含表区域或整个表的 TableSection

TableSection

TableView 的逻辑和可见部分。

TableSectionBase

定义表部分的抽象基类。

TableSectionBase<T>

包含由 Xamarin.Forms 呈现的类型 T 实例的表部分。

TableView

用于保存 Cell 元素行的 View

TapGestureRecognizer

提供点击手势识别和事件。

TappedEventArgs

ItemTapped 事件的参数。

TemplateBinding

将模板属性绑定至具有 ControlTemplate 的视图的父级。

TemplatedPage

显示带有控件模板的全屏内容的页,以及 ContentPage 的基类。

TemplatedView

显示带有控件模板的内容的视图,以及 ContentView 的基类。

TemplateExtensions

DataTemplate 的扩展类,提供了用于定义绑定的基于字符串的快捷方法。

TextAlignmentConverter

将文本对齐的字符串表示形式转换为 TextAlignment

TextCell

具有 Cell 主要 Text 和文本的 Detail

TextChangedEventArgs

事件的事件 TextChanged 参数。 提供新旧文本值。

TextDecorationConverter

可在字符串和 TextDecorations 对象之间转换的 TypeConverter 子类。

ThicknessTypeConverter

将字符串转换为 ThicknessTypeConverter

TimePicker

用于提供时间选择的 View 控件。

ToggledEventArgs

ToggledOnChanged 事件的事件参数。

ToolbarItem

工具栏中的项目或在 Page 上显示的项目。

Trigger

表示属性条件和在满足条件时所执行的操作的类。

TriggerAction

在满足触发条件时所执行的用户定义操作的基类。

TriggerAction<T>

在满足触发条件时所执行的用户定义操作的泛型基类。

TriggerBase

包含条件和满足条件时所要执行的操作列表的类的基类。

TypeConverter

抽象基类,其子类可在不同类型之间转换值。

TypeConverterAttribute

属性,用于指定其目标使用的 TypeConverter 类型。

TypeTypeConverter

采用 Type 的字符串表示形式并返回相应的 Type 的类。

UnsolvableConstraintsException

表示不能同时满足指定 Constraint 的异常。

UriImageSource

从 URI 加载映像并缓存结果的 ImageSource。

UriTypeConverter

从字符串或 Uri 转换为 UriTypeConverter

UrlWebViewSource

绑定至 URL 的 WebViewSource。

ValueChangedEventArgs

事件的事件 ValueChanged 参数。 同时提供旧值和新值。

View

用于在屏幕上放置布局和控件的视觉对象元素。

ViewCell

包含开发者定义的 ViewCell

ViewExtensions

View 的扩展方法,提供可进行动画处理的缩放、旋转和布局功能。

VisualAttribute

跨平台且受本机支持 UI 工具包。

VisualElement

占据屏幕某个区域的 Element 具有可视化外观,并可获得触摸输入。

VisualElement.FocusRequestArgs

包含 FocusChangeRequested 事件的事件参数。

VisualElement.VisibilityConverter

将可视元素可见性的字符串表示形式转换为一个表示元素可见性的布尔值。

VisualMarker

包含由 Xamarin Forms 团队实现的 IVisual 类型和由 Visual 系统使用的默认 IVisual 类型。

VisualMarker.DefaultVisual

IVisual 标记类型,用于指示使用默认呈现器呈现 View

VisualMarker.MaterialVisual

IVisual 标记类型,用于指示 View 使用材料呈现器进行呈现。

VisualState

包含一个已命名的可视化状态,它将一系列资源库应用于一个元素,以便将状态与外观相关联。

VisualStateGroup

包含可应用于可视化元素的相关可视化状态的列表。

VisualStateGroupList

包含应用程序的可视状态组列表。

VisualStateManager

管理视觉状态组和状态之间的转换控制。

VisualStateManager.CommonStates

跨平台且受本机支持 UI 工具包。

VisualTypeConverter

可将字符串转换为 IVisual 对象的 TypeConverter

WeakEventManager

跨平台且受本机支持 UI 工具包。

WebNavigatedEventArgs

包含 Web 导航完成后所引发的事件的参数的类。

WebNavigatingEventArgs

包含 Web 导航开始后引发的事件参数的类。

WebNavigationEventArgs

包含 Web 导航开始时引发的事件参数的类。

WebView

呈现 HTML 内容的 View

WebViewSource

抽象类,其子类为 WebView 提供数据。

WebViewSourceTypeConverter

将字符串转换为 UrlWebViewSourceTypeConverter

XmlnsDefinitionAttribute

指定 XML 命名空间和 CLR 命名空间之间的映射的属性。

XmlnsPrefixAttribute

跨平台且受本机支持 UI 工具包。

结构

Color

表示颜色并将颜色公开为 RGBA 和 HSL 值的类。

CornerRadius

包含用于指定圆角半径的方法和属性。

FlexBasis

用于表示绝对或相对元素大小的结构。

Font

用于显示文本的字体。

GridLength

用于定义网格 ColumnDefinition 和 RowDefinition 的大小(宽度/高度)。

LayoutOptions

一个结构,其静态成员定义不同的对齐和扩展选项。

Point

将二维点定义为一对双精度值的结构。

Rect

跨平台且受本机支持 UI 工具包。

Rectangle

使用双精度值定义矩形的结构。

Region

表示 Xamarin.Forms UI 中的可视区域。

Size

将高度和宽度定义为一对双精度值的结构。

SizeRequest

定义最小值和最大值 Size 的结构。

Thickness

结构使用双精度值定义 Rectangle 边缘的厚度。

Vec2

定义一对 X 和 Y 双精度值的结构。

接口

AbsoluteLayout.IAbsoluteList<T>

具有重载的 List 接口,用于将元素添加到绝对布局。

Grid.IGridList<T>

列出具有重载的接口,用于将元素添加到网格中。

IAnimatable

为可进行动画处理的元素定义接口。

IAppearanceObserver

跨平台且受本机支持 UI 工具包。

IAppIndexingProvider

此接口供平台呈现器内部使用。

IApplicationController

供平台呈现器内部使用。

IAppLinkEntry

表示应用链接搜索索引中的深层应用程序链接的接口。

IAppLinks

定义注册和取消注册应用中内容链接所需方法的接口。

IBorderElement

跨平台且受本机支持 UI 工具包。

IButtonController

供平台呈现器内部使用。

ICellController

供平台呈现器内部使用。

IConfigElement<T>

此接口供平台呈现器内部使用。

IConfigPlatform

标记类的基接口,该标记类为特定于平台的效果确定目标平台。

IDecorableTextElement

支持 TextDecorations 的类的接口。

IDefinition

定义 RowDefinitionColumnDefinition 类型的接口。

IDispatcher

跨平台且受本机支持 UI 工具包。

IDispatcherProvider

跨平台且受本机支持 UI 工具包。

IEditorController

供平台呈现器内部使用。

IEffectControlProvider

在呈现器中实现时,会在元素上注册特定于平台的效果。

IElementConfiguration<TElement>

用于返回 Xamarin.Forms 类型的特定于平台的实例的接口。

IElementController

供平台呈现器内部使用。

IEmbeddedFontLoader

跨平台且受本机支持 UI 工具包。

IEntryCellController

供平台呈现器内部使用。

IEntryController

供平台呈现器内部使用。

IExtendedTypeConverter

类型转换器的基类。

IFlyoutBehaviorObserver

跨平台且受本机支持 UI 工具包。

IFlyoutPageController

跨平台且受本机支持 UI 工具包。

IGestureRecognizer

所有手势识别器必须实现的基接口。

IGestureRecognizers

跨平台且受本机支持 UI 工具包。

IGridController

供平台呈现器内部使用。

IImageController

供平台呈现器内部使用。

IImageElement

跨平台且受本机支持 UI 工具包。

IItemsLayout

跨平台且受本机支持 UI 工具包。

IItemsView<T>

此接口供平台呈现器内部使用。

IItemViewController

供平台呈现器内部使用。

ILayout

指示布局行为和公开 LayoutChanged 事件的接口。

ILayoutController

供平台呈现器内部使用。

IListProxy

此接口供平台呈现器内部使用。

IListViewController

供平台呈现器内部使用。

IMasterDetailPageController

供平台呈现器内部使用。

IMenuItemController

供平台呈现器内部使用。

IMessagingCenter

通过遵守消息协定,启用视图模型和其他组件以进行通信。

IMultiPageController<T>

多页控制器的基类。

IMultiValueConverter

跨平台且受本机支持 UI 工具包。

INativeElementView

包含只读属性的接口,该只读属性返回 Xamarin.Forms 元素的特定于平台的本机视图。

INavigation

特定于接口抽象平台的导航。

INavigationPageController

供平台呈现器内部使用。

IOpenGlViewController

供平台呈现器内部使用。

IPageContainer<T>

Page 定义容器并公开 CurrentPage 属性的接口。

IPageController

供平台呈现器内部使用。

IPanGestureController

供平台呈现器内部使用。

IPinchGestureController

供平台呈现器内部使用。

IPlatformElementConfiguration<TPlatform,TElement>

用于返回特定于平台的配置元素的标记接口。

IQueryAttributable

跨平台且受本机支持 UI 工具包。

IRegisterable

内部使用的标记接口,指示可使用内部注册机构注册的类型。

IScrollViewController

供平台呈现器内部使用。

ISearchBarController

供平台呈现器内部使用。

ISearchHandlerController

定义控制搜索处理程序行为的界面。

IShellAppearanceElement

定义 Shell 应用程序中选项卡栏颜色的界面。

IShellContentController

扩展 IElementController 以定义适用于 Shell 应用程序内容页面的方法。

IShellContentInsetObserver

定义用于观察嵌入维度变化的界面。

IShellController

扩展 Shell 应用程序的 IPageController

IShellItemController

扩展 IElementController,以便使用 Shell 应用程序的组件。

IShellSectionController

使用特定于 Shell 应用程序的方法扩展 IElementController

ISliderController

跨平台且受本机支持 UI 工具包。

IStreamImageSource

此接口供平台呈现器内部使用。

ISwipeGestureController

供平台呈现器内部使用。

ISwipeItem

跨平台且受本机支持 UI 工具包。

ISwipeViewController

跨平台且受本机支持 UI 工具包。

ITableModel

此接口供平台呈现器内部使用。

ITableViewController

供平台呈现器内部使用。

ITabStopElement

跨平台且受本机支持 UI 工具包。

ITemplatedItemsList<TItem>

此接口供平台呈现器内部使用。

ITemplatedItemsListScrollToRequestedEventArgs

此接口供平台呈现器内部使用。

ITemplatedItemsView<TItem>

此接口供平台呈现器内部使用。

IValueConverter

定义类型之间的双向值转换方法的接口。

IViewContainer<T>

可以添加到容器的元素类型。

IViewController

此接口供平台呈现器内部使用。

IVisual

跨平台且受本机支持 UI 工具包。

IVisualElementController

供平台呈现器内部使用。

IWebViewController

供平台呈现器内部使用。

IWebViewDelegate

此接口供平台呈现器内部使用。

RelativeLayout.IRelativeList<T>

RelativeLayout 使用的 ViewIList<T>

枚举

AbsoluteLayoutFlags

用于修改如何在 AbsoluteLayout 中解释布局绑定的标志。

AccessKeyPlacement

枚举访问键相对于其描述的控件的位置。

Aspect

定义图像的显示方式。

BindingMode

绑定的变更传播方向。

Button.ButtonContentLayout.ImagePosition

枚举按钮内的图像位置。

ButtonsMask

表示鼠标按钮的标志值。

ClearButtonVisibility

跨平台且受本机支持 UI 工具包。

ConstraintType

枚举,用于指定约束是相对于视图的常数还是相对于其父级的常数。

DataPackageOperation

跨平台且受本机支持 UI 工具包。

DependencyFetchTarget

枚举,指定 Get<T>(DependencyFetchTarget) 是否应返回对某个全局实例或新实例的引用。

EditorAutoSizeOption

枚举值,用于控制编辑器是否会在用户输入时更改大小以适应输入内容。

EffectiveFlowDirection

枚举指示是否已显式设置布局方向以及布局方向是否为从右到左的标志。

FlexAlignContent

枚举控制多行或多列子元素的对齐方式的值。

FlexAlignItems

枚举控制子元素对齐的值。

FlexAlignSelf

枚举控制子元素是否会重写其父级应用的对齐特性及其重写方式。

FlexDirection

枚举指定行和列的弹性布局方向(相对于设备区域设置的方向)的值。

FlexJustify

枚举描述子元素在周围有额外空间时的对齐方式的值。

FlexPosition

枚举值,该值用于控制在指定子元素的位置时如何解释布局坐标。

FlexWrap

枚举值,用于控制是否以及如何包装 FlexLayout 中的项。

FlowDirection

枚举控制视图布局方向的值。

FlyoutBehavior

Shell 应用程序根菜单的模式枚举。

FlyoutDisplayOptions

枚举 Shell 应用程序中浮出控件的显示模式。

FlyoutHeaderBehavior

位于 FlyoutHeader 前面的模式枚举。

FlyoutLayoutBehavior

跨平台且受本机支持 UI 工具包。

FontAttributes

描述字体样式的枚举值。

GestureState

指定手势的各种状态的枚举。

GestureStatus

枚举可能的动作状态。

GridUnitType

枚举控制如何为行和列定义解释 Value 属性的值。

IndicatorShape

跨平台且受本机支持 UI 工具包。

InitializationFlags

跨平台且受本机支持 UI 工具包。

ItemSizingStrategy

跨平台且受本机支持 UI 工具包。

ItemsLayoutOrientation

跨平台且受本机支持 UI 工具包。

ItemsUpdatingScrollMode

跨平台且受本机支持 UI 工具包。

KeyboardFlags

枚举控制大小写、拼写检查和建议行为的键盘选项标志。

LayoutAlignment

表示 LayoutAlignment 的值。

LineBreakMode

指定换行的各个选项的枚举。

ListViewCachingStrategy

枚举 ListView 的缓存策略。

ListViewSelectionMode

枚举控制是否可以选择列表视图中的项的值。

MasterBehavior

枚举值,用于控制详细内容在母版-详细信息页中的显示方式。

MeasureFlags

枚举值,这些值指示布局窗口时是否包括边距。

NamedSize

表示预定义的字号。

OpenSwipeItem

跨平台且受本机支持 UI 工具包。

OSAppTheme

跨平台且受本机支持 UI 工具包。

PresentationMode

跨平台且受本机支持 UI 工具包。

RelativeBindingSourceMode

跨平台且受本机支持 UI 工具包。

ReturnType

枚举返回按钮样式。

ScrollBarVisibility

枚举显示滚动条的条件。

ScrollMode

跨平台且受本机支持 UI 工具包。

ScrollOrientation

指定垂直或水平滚动方向的枚举。

ScrollToMode

枚举描述如何发出滚动请求的值。

ScrollToPosition

枚举描述滚动请求的值。

SearchBoxVisibility

跨平台且受本机支持 UI 工具包。

SelectionMode

跨平台且受本机支持 UI 工具包。

SeparatorVisibility

控制列表项分隔符可见性的枚举值。

ShellNavigationSource

枚举 Shell 应用程序中导航事件的原因。

SnapPointsAlignment

跨平台且受本机支持 UI 工具包。

SnapPointsType

跨平台且受本机支持 UI 工具包。

StackOrientation

StackLayout 可以具有的方向。

Stretch

跨平台且受本机支持 UI 工具包。

SweepDirection

跨平台且受本机支持 UI 工具包。

SwipeBehaviorOnInvoked

跨平台且受本机支持 UI 工具包。

SwipeDirection

枚举轻扫方向。

SwipeMode

跨平台且受本机支持 UI 工具包。

TableIntent

TableIntent 为呈现器提供有关如何使用表的提示。

TabsStyle

枚举选项卡式页的选项卡样式。

TargetIdiom

指示 Xamarin.Forms 正在处理的设备类型。

TargetPlatform

指示当前正在使用的 OS Xamarin.Forms 类型。

TextAlignment

枚举控制文本对齐方式的值。

TextDecorations

标记定义文本效果的枚举。

TextTransform

跨平台且受本机支持 UI 工具包。

TextType

跨平台且受本机支持 UI 工具包。

ToolbarItemOrder

指定 ToolbarItem 是显示在主工具栏曲面还是显示在辅工具栏曲面上的枚举。

ViewState

已否决。 请勿使用。

WebNavigationEvent

包含指示引发导航事件的原因的值。

WebNavigationResult

枚举指示 Web 导航结果的值。

委托

BindableProperty.BindingPropertyChangedDelegate

BindableProperty.PropertyChanged 的委托。

BindableProperty.BindingPropertyChangedDelegate<TPropertyType>

BindableProperty.PropertyChanged 的强类型委托。

BindableProperty.BindingPropertyChangingDelegate

BindableProperty.PropertyChanging 的委托。

BindableProperty.BindingPropertyChangingDelegate<TPropertyType>

BindableProperty.PropertyChanging 的强类型委托。

BindableProperty.CoerceValueDelegate

BindableProperty.CoerceValue 的委托。

BindableProperty.CoerceValueDelegate<TPropertyType>

BindableProperty.CoerceValue 的强类型委托。

BindableProperty.CreateDefaultValueDelegate

BindableProperty.DefaultValueCreator 的强类型化委托。

BindableProperty.CreateDefaultValueDelegate<TDeclarer,TPropertyType>

BindableProperty.DefaultValueCreator 的委托。

BindableProperty.ValidateValueDelegate

BindableProperty.ValidateValue 的委托。

BindableProperty.ValidateValueDelegate<TPropertyType>

BindableProperty.ValidateValue 的强类型委托。

CollectionSynchronizationCallback

EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) 中回调的委托。

PropertyChangingEventHandler

PropertyChanging 事件的委托。

注解

Xamarin.Forms 是一种跨平台、本机支持的 UI 工具包抽象,允许开发人员创建可在 Android、iOS 和Windows Phone之间共享的用户界面。 由于用户界面使用目标平台的本机控件,因此它们具有本机生成应用的外观以及重要的响应能力。

Xamarin.Forms 解决方案体系结构

跨平台项目

Xamarin.Forms 应用程序的用户体验通常在跨平台共享项目中定义, (可移植类库或共享项目) ,并结合特定于平台的项目,这些项目至少初始化本机平台呈现 (请注意以下平台代码示例中对 Forms.Init() 的调用) ,更一般地,以特定于平台的方式扩展用户体验和用户界面 (例如, 通过访问特定于平台的传感器或功能) 。

例如,开发人员可以创建一个跨平台 Xamarin.Forms Label ,并在共享项目中使用以下代码显示它:

public class App : Xamarin.Forms.Application
{
    public App ()
    {
        MainPage = new ContentPage
        {
            Content = new Label
                {
                    Text = "Welcome to Xamarin Forms!",
                    VerticalOptions = LayoutOptions.CenterAndExpand,
                    HorizontalOptions = LayoutOptions.CenterAndExpand,
                },
        };
    }
}

此代码在目标平台上生成居中标签:

虽然具有更多有用用户界面的更复杂的布局更为典型,但此示例可用于清楚地说明 Xamarin.Forms 用于在目标平台上创建和显示代码的共享和特定于平台的代码。 当开发人员创建新的 Xamarin.Forms 项目时,以下讨论中的代码由 Visual Studio 在目标平台项目中创建。 在每种情况下,都会调用特定于 Forms.Init() 平台的方法,以在调用依赖于 Xamarin.Forms 的任何其他方法之前初始化表单。

iOS 平台代码

在 iOS 平台上,Visual Studio 将框架类 Xamarin.Forms.Platform.iOS.FormsApplicationDelegate 的子类注册为应用程序的入口点,并立即调用 Xamarin.Forms.Forms.Init

[Register("AppDelegate")]
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
    public override bool FinishedLaunching(UIApplication app, NSDictionary options)
    {
        global::Xamarin.Forms.Forms.Init();
        LoadApplication(new App());

        return base.FinishedLaunching(app, options);
    }
}

Android 平台代码

Android 上的入口点是框架类 Xamarin.Forms.Platform.Android.FormsAppCompatActivity的子类,其 OnCreate 方法必须在调用 Forms.Init之前配置选项卡栏和工具栏并调用其 base 方法。

[Activity(Label = "HelloXamarinFormsWorld.Droid", Icon = "@drawable/icon", Theme = "@style/MyTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
    protected override void OnCreate(Bundle bundle)
    {
        TabLayoutResource = Resource.Layout.Tabbar;
        ToolbarResource = Resource.Layout.Toolbar;

        base.OnCreate(bundle);

        global::Xamarin.Forms.Forms.Init(this, bundle);

        LoadApplication(new App());
    }

    protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
    {
        base.OnActivityResult(requestCode, resultCode, data);
    }
}

UWP 代码

UWP 上 Xamarin.Forms 应用的入口点只是 UWP 平台项目中 的 中的 Windows.UI.Xaml.ApplicationApp.xaml.cs 的构造函数。 但是,UWP 上的应用程序生命周期使得对 Forms.Init 的调用必须在 方法内 OnLaunched 进行,并且可防止多次运行。 必要的代码超出了本文档的范围,但鼓励好奇的开发人员创建测试 Xamarin.Forms 解决方案并研究文件中的代码 App.xaml.cs 以获取更多详细信息

Xamarin.Forms 中的元素

Xamarin.Forms 命名空间中的重要类型包括 PageViewLayoutPage通常对应于控制器对象 (Android 世界中的活动、iOS 世界中的 UIViewControllers) 、View具有控件或小组件的 ,以及 Layout其他 View上的 排列 View。 这些类型都派生自 Element

Model-View-ViewModel 和 Xamarin.Forms

应用程序开发人员使用 Model-View-ViewModel (MVVM) 模式来创建 Xamarin.Forms 应用,将数据呈现和用户界面的关注点与数据存储和操作的关注点完全分开。 框架 Xamarin.Forms 通过在几个其他相关类型 BindableObject 中提供 和 BindableProperty 类来启用此功能。 继承自 BindableObject 的对象可以绑定到其他对象上的 类型 BindableProperty 成员。

维护 BindableObject 名称的 BindableProperty 字典以及与其相应绑定上下文的关联,即 BindableProperty 定义 的对象,以及应用程序开发人员通过 分配给 BindingContext 属性 Binding的对象。 有关详细信息,请参阅BindableObject

另请参阅