Xamarin.Forms Espacio de nombres

Kit de herramientas de interfaz de usuario multiplataforma con copia de seguridad nativa.

Clases

AbsoluteLayout

Coloca los elementos secundarios en posiciones absolutas.

Accelerator

Representa una tecla de método abreviado para un MenuItem.

AcceleratorTypeConverter

Clase que usa el analizador XAML para convertir cadenas en objetos Accelerator.

ActivityIndicator

Control visual que sirve para indicar que algo está en curso.

AdaptiveTrigger
Animation

Encapsula una animación, una colección de funciones que modifican propiedades durante un período de tiempo significativo para el usuario.

AnimationExtensions

Métodos de extensión para objetos IAnimatable.

Application

Clase que representa una aplicación móvil multiplataforma.

AppLinkEntry

Vínculo de aplicación profundo en un índice de búsqueda de vínculos de aplicación.

AppThemeChangedEventArgs
AutomationProperties

Contiene información de interfaz de usuario tanto resumida como detallada que se proporciona a los servicios de accesibilidad.

BackButtonBehavior

Un objeto BindableObject que especifica el comportamiento asociado con el botón Atrás en una aplicación del shell.

BackButtonPressedEventArgs

Solo para uso interno. Contiene argumentos del evento que se desencadena cuando se presiona un botón Atrás.

BaseMenuItem

Clase base para los elementos de menú.

BaseShellItem

NavigableElement es la clase base de ShellGroupItem y ShellContent.

BaseSwipeEventArgs
Behavior

Clase base de los comportamientos generalizados definidos por el usuario que pueden responder a eventos y condiciones arbitrarios.

Behavior<T>

Clase base genérica de los comportamientos generalizados definidos por el usuario que pueden responder a eventos y condiciones arbitrarios.

BindableLayout

Clase estática que especifica las propiedades asociadas que permiten que un objeto Layout<T> funcione con un objeto IEnumerable enlazado a datos.

BindableObject

Proporciona un mecanismo con el que los desarrolladores de aplicaciones pueden propagar los cambios que se realizan en datos de un objeto a otro, habilitando la validación, la conversión de tipos y un sistema de eventos. BindableProperty.

BindableObjectExtensions

Contiene métodos de extensión de conveniencia para BindableObject.

BindableProperty

Una BindableProperty es una memoria auxiliar de propiedades que permiten enlaces de BindableObject.

BindablePropertyConverter

Un TypeConverter para propiedades enlazables.

BindablePropertyKey

La clave secreta para una propiedad BindableProperty, usada para implementar BindableProperty con acceso de escritura restringido.

Binding

Enlace de datos inmutable 1:1 único.

BindingBase

Una clase abstracta que proporciona un BindingMode y una opción de formato.

BindingCondition

Clase que representa una comparación de valores con el destino de un enlace arbitrario.

BindingTypeConverter

Convertidor de tipos que convierte cadenas en objetos Binding.

BoundsConstraint

Restricción de diseño de límites utilizada por RelativeLayout.

BoundsTypeConverter

TypeConverter que convierte las cadenas en Rectangle para su uso con AbsoluteLayout.

BoxView

View que se usa para dibujar un rectángulo de color sólido.

Brush
BrushTypeConverter
BrushTypeConverter.GradientBrushParser
Button

Botón View que reacciona a eventos de toque.

Button.ButtonContentLayout

Controla el posicionamiento relativo del texto y una imagen de un Button, así como el espaciado entre ellos.

Button.ButtonContentTypeConverter

Clase que usa el analizador XAML para convertir cadenas en objetos Button.ButtonContentLayout.

CarouselLayoutTypeConverter
CarouselPage

Una página que los usuarios pueden deslizar de un lado a otro para mostrar las páginas de contenido, como una galería.

CarouselView

Un objeto ItemsView cuyas vistas secundarias desplazables "encajan" en su lugar.

Cell

Proporciona una clase base y funciones para todas las celdas de Xamarin.Forms. Las celdas son elementos diseñados para agregarse a ListView o TableView.

CheckBox
CheckedChangedEventArgs

Argumentos del evento CheckedChanged de CheckBox.

ChildGestureRecognizer

Reconocedor de gestos para su uso como un elemento secundario de otro.

ClickedEventArgs

Argumentos de evento de un evento Click.

ClickGestureRecognizer

Reconocedor de gestos de clic.

CollectionView

Un objeto SelectableItemsView que presenta una colección de elementos.

ColorTypeConverter

TypeConverter que convierte las cadenas en un Color.

ColumnDefinition

Una interfaz IDefinition que define las propiedades de una columna en una clase Grid.

ColumnDefinitionCollection

DefinitionCollection<T> para ColumnDefinition.

ColumnDefinitionCollectionTypeConverter
Command

Define una implementación ICommand que encapsula un Action.

Command<T>

Define una implementación ICommand que incluye un elemento Action<T> genérico.

CompareStateTrigger
CompressedLayout

Contiene las propiedades adjuntas para omitir representadores redundantes.

Condition

Clase base para las condiciones.

Configuration<TPlatform,TElement>

Clase de utilidad para recuperar versiones de elementos específicas de la plataforma.

Constraint

Una restricción de diseño utilizada por RelativeLayout.

ConstraintExpression

Define una relación de restricción.

ConstraintTypeConverter

TypeConverter que convierte las cadenas en un Constraint.

ContentPage

Page que muestra una vista única.

ContentPresenter

Administrador de diseño de las vistas con plantilla.

ContentPropertyAttribute

Indica la propiedad del tipo que es la propiedad de contenido (predeterminada).

ContentView

Elemento que contiene un único elemento secundario.

ControlTemplate

Plantilla que especifica un grupo de efectos y estilos de los controles.

CornerRadiusTypeConverter

Una subclase TypeConverter que puede convertir una cadena en CornerRadius.

CurrentItemChangedEventArgs
DataPackage
DataPackagePropertySet
DataPackagePropertySetView
DataPackageView
DataTemplate

Plantilla para varios enlaces, que normalmente usan ListView y MultiPage<T>.

DataTemplateSelector

Selecciona objetos DataTemplate por tipo de datos y contenedor.

DataTrigger

Clase que representa una condición en un enlace arbitrario, junto con una lista de objetos Setter que se aplicarán cuando se cumpla la condición.

DateChangedEventArgs

Argumentos de evento del evento DateSelected.

DatePicker

Un View que permite la selección de fecha.

DefinitionCollection<T>

Colección parametrizada por un IDefinition. Clase base de ColumnDefinitionCollection y RowDefinitionCollection.

DependencyAttribute

Atributo que indica que el tipo especificado proporciona una implementación concreta de una interfaz necesaria.

DependencyService

Clase estática que proporciona el Factory Method Get<T>(DependencyFetchTarget) para recuperar implementaciones específicas de la plataforma del tipo especificado T.

DesignMode

Clase estática que pueden usar los desarrolladores para determinar si la aplicación se ejecuta en un controlador de vista previa.

Device

Clase de utilidad para interactuar con la plataforma o el dispositivo actual.

Device.Styles

Clase que expone estilos específicos del dispositivo como campos estáticos.

DeviceStateTrigger
DoubleCollection
DoubleCollectionConverter
DragEventArgs
DragGestureRecognizer
DragStartingEventArgs
DropCompletedEventArgs
DropEventArgs
DropGestureRecognizer
Easing

Funciones que modifican valores de forma no lineal; se suelen usar en animaciones.

EasingTypeConverter
Editor

Control que puede editar varias líneas de texto.

Effect

Colección de estilos y propiedades que se pueden agregar a un elemento en tiempo de ejecución.

EffectiveFlowDirectionExtensions

Métodos de extensión para averiguar la dirección del flujo y si se ha establecido de forma explícita.

EffectiveVisualExtensions
Element

Proporciona la clase base de todos los elementos jerárquicos de Xamarin.Forms. Esta clase contiene todos los métodos y propiedades necesarios para representar un elemento en la jerarquía de Xamarin.Forms.

ElementEventArgs

Proporciona datos para eventos relacionados con un solo Element.

ElementTemplate

Clase base de las clases DataTemplate y ControlTemplate.

EmbeddedFont
Entry

Control que puede editar una única línea de texto.

EntryCell

Cell con una etiqueta y un campo de entrada de texto de línea única.

EventTrigger

Clase que representa un evento desencadenador y una lista de objetos TriggerAction que se invocará cuando se produzca el evento.

ExportEffectAttribute

Atributo que identifica un Effect con un identificador único que se puede utilizar con Resolve(String) para encontrar un efecto.

ExportFontAttribute
FileImageSource

ImageSource que lee una imagen de un archivo.

FileImageSourceConverter

TypeConverter que se convierte en FileImageSource.

FlexAlignContentTypeConverter

Convierte una representación de cadena de un estilo de alineación de filas de contenido secundario en un FlexAlignContent.

FlexAlignItemsTypeConverter

Convierte una representación de cadena de un estilo de alineación de contenido secundario en un FlexAlignItems.

FlexAlignSelfTypeConverter

Convierte una representación de cadena de un reemplazo de alineación en FlexAlignSelf.

FlexBasis.FlexBasisTypeConverter

Convierte una representación de cadena de una base flexible en un FlexBasis.

FlexDirectionTypeConverter

Convierte una representación de cadena de una dirección de diseño flexible de una fila o columna en un FlexDirection.

FlexJustifyTypeConverter

Convierte una representación de cadena de un estilo de justificación de elemento secundario en un FlexJustify.

FlexLayout

Diseño similar al de una caja flexible que dispone los elementos secundarios en filas o columnas (opcionalmente encapsulables) de elementos secundarios.

FlexWrapTypeConverter

Convierte una representación de cadena de un estilo de encapsulado en un FlexWrap.

FlowDirectionConverter

Convierte una representación de cadena de una dirección de flujo en un FlowDirection.

FlyoutItem

Un ShellItem que tiene una colección de objetos Tab.

FlyoutPage
FocusEventArgs

Argumentos de los eventos Focused y Unfocused de VisualElement.

FontAttributesConverter

Convierte una cadena en un objeto FontAttributes.

FontFile
FontImageSource
FontSizeConverter

Convierte una cadena en un tamaño de fuente.

FontTypeConverter

TypeConverter que convierte las cadenas en Font.

FormattedString

Representa un texto con los atributos aplicados a algunas partes.

Frame

Elemento que contiene un único elemento secundario, con algunas opciones de tramas.

GestureElement

Elemento que puede responder a los gestos.

GestureRecognizer

Clase base de todos los reconocedores de gestos.

GradientBrush
GradientStop
GradientStopCollection
Grid

Diseño que dispone las vistas en filas y columnas.

GridItemsLayout
GridLengthTypeConverter

TypeConverter que convierte las cadenas en GridLength.

GroupableItemsView
HandlerAttribute

Un atributo abstracto cuyas subclases especifican los representadores específicos de la plataforma de los controles abstractos de Xamarin.Forms.

HtmlWebViewSource

Un WebViewSource enlazado a una cadena con formato HTML.

Image

View que contiene una imagen.

ImageButton
ImageCell

Objeto TextCell que tiene una imagen.

ImageSource

Clase abstracta cuyos implementadores cargan imágenes desde archivos o la Web.

ImageSourceConverter

Clase que toma una representación de cadena de una ubicación de archivo de imagen y devuelve un ImageSource desde el recurso especificado.

IndicatorView
InputView

Clase base de una vista que acepta la entrada de teclado.

InvalidNavigationException
ItemsLayout
ItemsLayoutTypeConverter
ItemsView

Un objeto View que sirve como clase base para las vistas que contienen una lista de elementos con plantilla.

ItemsView<TVisual>

Una clase base para obtener una vista que contenga una lista de plantillas de elementos.

ItemsViewScrolledEventArgs
ItemTappedEventArgs

Argumentos del evento para el evento ItemTapped.

ItemVisibilityEventArgs

Argumentos del evento cuando ha cambiado la visibilidad de un elemento en una ListView.

Keyboard

Teclado predeterminado y clase base para teclados especializados, como los de los números de teléfono, correo electrónico y direcciones URL.

KeyboardTypeConverter

TypeConverter que convierte una cadena en un Keyboard.

Label

View que muestra texto.

Layout

Proporciona la clase base para todos los elementos de diseño. Use elementos de diseño para posicionar los elementos secundarios y modificar su tamaño en aplicaciones de Xamarin.Forms.

Layout<T>

Una implementación base de un diseño con un comportamiento sin definir y varios elementos secundarios.

LayoutOptionsConverter

Clase que toma una representación de cadena de un LayoutOptions y devuelve un LayoutOptions correspondiente.

LinearGradientBrush
LinearItemsLayout
ListProxyChangedEventArgs
ListStringTypeConverter

Convertidor de tipos para convertir correctamente listas de cadenas con formato en listas.

ListView

ItemsView<TVisual> que muestra una colección de datos como una lista vertical.

MarshalingObservableCollection
MasterDetailPage

Una clase Page que administra dos paneles de información: una página maestra que presenta los datos en un nivel alto y una página de detalles que muestra los detalles de bajo nivel sobre la información de la página maestra.

Menu

Representa el menú de una aplicación en plataformas que la admiten.

MenuItem

Clase que presenta un elemento de menú y lo asocia con un comando.

MenuItemCollection

Un grupo de objetos MenuItem relacionados.

MessagingCenter

Asocia una devolución de llamada en los suscriptores con un nombre de mensaje específico.

ModalEventArgs

Clase base para ModalPushedEventArgs, ModalPushingEventArgs, ModalPoppedEventArgs y ModalPoppingEventArgs.

ModalPoppedEventArgs

Argumentos del evento que se genera cuando una ventana modal sale de la pila de navegación.

ModalPoppingEventArgs

Argumentos del evento que se genera cuando una ventana modal sale de la pila de navegación.

ModalPushedEventArgs

Argumentos del evento que se desencadena cuando se inserta una ventana modal en la pila de navegación.

ModalPushingEventArgs

Argumentos del evento que se genera cuando se está insertando una ventana modal en la pila de navegación.

MultiBinding
MultiPage<T>

Clase base, que se puede enlazar y usar como plantilla, para páginas que contienen subpáginas.

MultiTrigger

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

NamedPlatformColor
NameScopeExtensions

Métodos de extensión para Element que agrega un método de FindByName fuertemente tipado.

NavigableElement

Un Element que admite la navegación.

NavigationEventArgs

EventArgs de los eventos de navegación de NavigationPage.

NavigationPage

Page que administra la navegación y la experiencia de usuario de una pila de otras páginas.

On

Clase que se usa en etiquetas OnPlatform en XAML al especificar valores en las plataformas.

OnIdiom<T>

Proporciona un valor específico de la expresión para T para la expresión de destino actual.

OnPlatform<T>

Proporciona la implementación específica de la plataforma de T para el OS actual.

OpenGLView

Una clase View que muestra el contenido de OpenGL.

OpenSwipeEventArgs
OrientationStateTrigger
Page

Una clase VisualElement que ocupa toda la pantalla.

PanGestureRecognizer

Reconocedor de gestos para aplicar panorámica a contenido que es mayor que su vista principal.

PanUpdatedEventArgs

Evento que se desencadena cuando se actualiza un gesto de desplazamiento lateral.

Picker

Control View para seleccionar un elemento de una lista.

PinchGestureRecognizer

Reconocedor de gestos de reducir.

PinchGestureUpdatedEventArgs

Argumentos del evento para el evento PinchUpdated.

PlatformEffect<TContainer,TControl>

Clase base de las clases de efecto específicas de la plataforma.

PointTypeConverter

TypeConverter que convierte una cadena en un Point.

PoppedToRootEventArgs

EventArgs del evento de navegación PoppedToRoot de NavigationPage.

PositionChangedEventArgs
ProgressBar

Control View que muestra el progreso.

PropertyChangingEventArgs

Argumentos de evento del delegado de PropertyChangingEventHandler.

PropertyCondition

Clase que representa una comparación de valores con respecto a una propiedad en el control que contiene el objeto MultiTrigger envolvente.

QueryPropertyAttribute
RadialGradientBrush
RadioButton
RadioButtonGroup
RectangleTypeConverter

TypeConverter que convierte una cadena en un Rectangle.

RectTypeConverter
ReferenceTypeConverter

Para uso interno de la plataforma de Xamarin.Forms.

RefreshView
RelativeBindingSource
RelativeLayout

Layout<T> que usa objetos Constraint para disponer sus elementos secundarios.

RenderWithAttribute

Asocia una vista con un representador.

ResolutionGroupNameAttribute

Atributo que identifica un nombre de grupo (normalmente, un nombre de empresa o una dirección URL de empresa invertido) y que proporciona un ámbito para los nombres de efecto.

ResourceDictionary

Un IDictionary que asigna las cadenas del identificador a objetos de recursos arbitrarios.

ResourceDictionary.RDSourceTypeConverter

Para uso interno de la plataforma de Xamarin.Forms.

RouteFactory
Routing
RoutingEffect

Efecto independiente de la plataforma que ajusta un efecto interno, que suele ser específico de la plataforma.

RowDefinition

Una interfaz IDefinition que define las propiedades de una fila en una clase Grid.

RowDefinitionCollection

DefinitionCollection<T> para RowDefinition.

RowDefinitionCollectionTypeConverter
ScrolledEventArgs

Argumentos del evento que se genera cuando se desplaza una ventana.

ScrollToRequestedEventArgs

Argumentos del evento que se genera cuando se solicita un desplazamiento.

ScrollToRequestEventArgs
ScrollView

Un elemento capaz de desplazarse si el contenido lo requiere.

SearchBar

Control View que proporciona un cuadro de búsqueda.

SearchHandler

Implementación predeterminada de ISearchHandlerController.

SelectableItemsView
SelectedItemChangedEventArgs

Argumentos del evento para el evento ItemSelected.

SelectedPositionChangedEventArgs

Argumentos de evento para los eventos de desplazamiento posicional.

SelectionChangedEventArgs
Setter

Representa una asignación de una propiedad a un valor, normalmente en un estilo o en respuesta a un desencadenador.

SettersExtensions

Define los métodos de extensión de IList<Setter>

Shell

Un elemento Page que proporciona características fundamentales de la interfaz de usuario que requieren la mayoría de las aplicaciones, lo que le permite centrarse en la carga de trabajo principal de la aplicación.

ShellAppearance
ShellContent

Se corresponde a un ContentPage contenido en un ShellSection.

ShellGroupItem

Un valor BaseShellItem que tiene FlyoutDisplayOptions. Clase base de ShellItem y ShellSection.

ShellItem

Uno o varios elementos en el control flotante. Contenido en un Shell.

ShellNavigatedEventArgs

Argumentos para el evento OnNavigated(ShellNavigatedEventArgs).

ShellNavigatingDeferral
ShellNavigatingEventArgs

Argumentos para el evento OnNavigating(ShellNavigatingEventArgs).

ShellNavigationState

Un identificador URI que representa la página actual o un destino para la navegación en una aplicación del shell.

ShellSection

Contenido agrupado en una aplicación del shell, al que se puede navegar por pestañas inferiores.

SizeTypeConverter

Un objeto TypeConverter que puede convertir una cadena en un objeto Size.

Slider

Un control View que introduce un valor lineal.

SolidColorBrush
Span

Representa una sección de FormattedString.

StackLayout

Un Layout<T> que coloca los elementos secundarios en una sola línea que se puede orientar de forma vertical u horizontal.

StateTrigger
StateTriggerBase
Stepper

Control View que introduce un valor discreto, restringido a un intervalo.

StreamImageSource

ImageSource que carga una imagen desde un Stream.

StructuredItemsView
Style

Clase que contiene desencadenadores, establecedores y comportamientos que definen completa o parcialmente la apariencia y el comportamiento de una clase de elementos visuales.

SwipeChangingEventArgs
SwipedEventArgs

Argumentos de eventos de deslizamiento rápido.

SwipeEndedEventArgs
SwipeGestureRecognizer

Reconocedor de gestos de deslizamiento rápido.

SwipeItem
SwipeItems
SwipeItemView
SwipeStartedEventArgs
SwipeView
Switch

Control View que proporciona un valor de estado de alternancia.

SwitchCell

Clase Cell con una etiqueta y un conmutador de encendido y apagado.

Tab
TabBar
TabbedPage

MultiPage<T> que muestra una matriz de pestañas en la parte superior de la pantalla, cada una de las cuales carga contenido en la pantalla.

TabIndexExtensions

Métodos de extensiones que admiten la iteración y recuperación de índices de tabulación.

TableRoot

TableSection que contiene una sección de tabla o toda la tabla.

TableSection

Sección lógica y visible de un TableView.

TableSectionBase

Clase base abstracta que define una sección de tabla.

TableSectionBase<T>

Sección de tabla que contiene las instancias de tipo T representadas por Xamarin.Forms.

TableView

Un View que contiene las filas de los elementos Cell.

TapGestureRecognizer

Proporciona eventos y reconocimiento de gestos de pulsar.

TappedEventArgs

Argumentos para el evento ItemTapped.

TemplateBinding

Enlaza una propiedad de plantilla con el elemento principal de la vista que posee un ControlTemplate.

TemplatedPage

Página que muestra el contenido a pantalla completa con una plantilla de control y la clase base de ContentPage.

TemplatedView

Vista que muestra el contenido con una plantilla de control y la clase base de ContentView.

TemplateExtensions

Clase de extensión de DataTemplate que proporciona un método abreviado basado en cadena para definir un objeto Binding.

TextAlignmentConverter

Convierte una representación de cadena de una alineación de texto en un TextAlignment.

TextCell

Un Cell con Text principal y texto Detail.

TextChangedEventArgs

Argumentos de evento para eventos TextChanged. Proporciona valores de texto antiguos y nuevos.

TextDecorationConverter

Una subclase TypeConverter que puede hacer conversiones entre una cadena y un objeto TextDecorations.

ThicknessTypeConverter

TypeConverter que convierte una cadena en un Thickness.

TimePicker

Un control View que proporciona la selección de tiempo.

ToggledEventArgs

Argumentos de evento de los eventos Toggled y OnChanged.

ToolbarItem

Un elemento en una barra de herramientas o que se muestra en una Page.

Trigger

Clase que representa una condición de propiedad y una acción que se realiza cuando se cumple la condición.

TriggerAction

Clase base para las acciones definidas por el usuario que se llevan a cabo cuando se cumple una condición de desencadenador.

TriggerAction<T>

Una clase base genérica para las acciones definidas por el usuario que se llevan a cabo cuando se cumple una condición de desencadenador.

TriggerBase

Clase base para las clases que contienen una condición y una lista de acciones para realizar cuando se cumpla la condición.

TypeConverter

Clase base abstracta cuyas subclases pueden convertir valores entre distintos tipos.

TypeConverterAttribute

Atributo que especifica el tipo de TypeConverter que usa su destino.

TypeTypeConverter

Clase que toma una representación de cadena de un Type y devuelve un Type correspondiente.

UnsolvableConstraintsException

Excepción que indica que los Constraint especificados no se pueden satisfacer simultáneamente.

UriImageSource

Un objeto ImageSource que carga una imagen de un URI y almacena en caché el resultado.

UriTypeConverter

TypeConverter que convierte una cadena o un Uri en un Uri.

UrlWebViewSource

Un WebViewSource enlazado a una URL.

ValueChangedEventArgs

Argumentos de evento de los eventos ValueChanged. Proporciona los valores tanto antiguos como nuevos.

View

Elemento visual que se utiliza para colocar diseños y controles en la pantalla.

ViewCell

Un Cell que contiene un View definido por el desarrollador.

ViewExtensions

Métodos de extensión para Views, que proporcionan funciones de escalado, rotación y diseño que se pueden animar.

VisualAttribute
VisualElement

Element que ocupa una zona de la pantalla, tiene una apariencia visual y puede obtener la entrada táctil.

VisualElement.FocusRequestArgs

Contiene los argumentos del evento FocusChangeRequested.

VisualElement.VisibilityConverter

Convierte una representación de cadena de la visibilidad de un elemento visual en un valor booleano que representa la visibilidad del elemento.

VisualMarker

Contiene los tipos de IVisual implementados por el equipo de Xamarin Forms y los tipos predeterminados de IVisual que usa el sistema Visual.

VisualMarker.DefaultVisual

Tipo de marcador de IVisual usado para indicar que un objeto View se represente mediante el representador predeterminado.

VisualMarker.MaterialVisual

Tipo de marcador de IVisual usado para indicar que un objeto View se represente mediante un representador de materiales.

VisualState

Contiene un estado visual con nombre que aplica una lista de establecedores a un elemento con el fin de correlacionar un estado con una apariencia.

VisualStateGroup

Contiene una lista de estados visuales relacionados que se pueden aplicar a un elemento visual.

VisualStateGroupList

Contiene una lista de grupos de estados visuales de una aplicación.

VisualStateManager

Administra los grupos de estados visuales y los controles de las transiciones entre estados.

VisualStateManager.CommonStates
VisualTypeConverter

Un objeto TypeConverter que puede convertir una cadena en un objeto IVisual.

WeakEventManager
WebNavigatedEventArgs

Clase que contiene argumentos del evento que se genera cuando la navegación web finaliza.

WebNavigatingEventArgs

Clase que contiene argumentos del evento que se genera cuando la navegación web se inicia.

WebNavigationEventArgs

TClass que contiene los argumentos para el evento que es cuando empieza la navegación web.

WebView

View que representa contenido HTML.

WebViewSource

Clase abstracta cuyas subclases proporcionan los datos de un WebView.

WebViewSourceTypeConverter

TypeConverter que convierte una cadena en un UrlWebViewSource.

XmlnsDefinitionAttribute

Atributo que especifica la asignación entre un espacio de nombres XML y un espacio de nombres CLR.

XmlnsPrefixAttribute

Estructuras

Color

Clase que representa un color y lo expone como valores RGBA y HSL.

CornerRadius

Contiene métodos y propiedades para especificar los radios de redondeo.

FlexBasis

Struct que representa un tamaño de elemento absoluto o relativo.

Font

Fuente utilizada para mostrar texto.

GridLength

Se usa para definir el tamaño (ancho/alto) de la ColumnDefinition y la RowDefinition de Grid.

LayoutOptions

Una estructura cuyos miembros estáticos definen varias opciones de alineación y expansión.

Point

Struct que define un punto 2-D como un par de valores dobles.

Rect
Rectangle

Estructura que define un rectángulo, utilizando valores double.

Region

Representa una región visual en una interfaz de usuario de Xamarin.Forms.

Size

Estructura que define el alto y el ancho como un par de valores dobles.

SizeRequest

Estructura que define los valores mínimo y máximo de Size.

Thickness

Struct que define el grosor en torno a los bordes de un Rectangle mediante valores double.

Vec2

Estructura que define los valores dobles de X e Y.

Interfaces

AbsoluteLayout.IAbsoluteList<T>

Interfaz de lista con sobrecargas para agregar elementos a un diseño absoluto.

Grid.IGridList<T>

Interfaz de lista con sobrecargas para agregar elementos a una cuadrícula.

IAnimatable

Define una interfaz para los elementos que se pueden animar.

IAppearanceObserver
IAppIndexingProvider

Esta interfaz es para uso interno de los representadores de plataformas.

IApplicationController

Para uso interno de los representadores de plataformas.

IAppLinkEntry

Interfaz que representa un vínculo de aplicación profundo en un índice de búsqueda de vínculos de aplicación.

IAppLinks

Interfaz que define los métodos que se necesitan para el registro y la anulación del registro de vínculos al contenido de las aplicaciones.

IBorderElement
IButtonController

Para uso interno de los representadores de plataformas.

ICellController

Para uso interno de los representadores de plataformas.

IConfigElement<T>

Esta interfaz es para uso interno de los representadores de plataformas.

IConfigPlatform

Interfaz base de las clases de marcador que identifican las plataformas de destino en busca de efectos específicos de plataforma.

IDecorableTextElement

Interfaz para clases que admiten TextDecorations.

IDefinition

Interfaz que define el tipo de RowDefinition y ColumnDefinition.

IDispatcher
IDispatcherProvider
IEditorController

Para uso interno de los representadores de plataformas.

IEffectControlProvider

Cuando se implementa en un representador, registra un efecto específico de la plataforma en un elemento.

IElementConfiguration<TElement>

Interfaz para devolver la instancia específica de plataforma de un tipo de Xamarin.Forms.

IElementController

Para uso interno de los representadores de plataformas.

IEmbeddedFontLoader
IEntryCellController

Para uso interno de los representadores de plataformas.

IEntryController

Para uso interno de los representadores de plataformas.

IExtendedTypeConverter

Clase base de los convertidores de tipos.

IFlyoutBehaviorObserver
IFlyoutPageController
IGestureRecognizer

Interfaz base que deben implementar todos los reconocedores de gestos.

IGestureRecognizers
IGridController

Para uso interno de los representadores de plataformas.

IImageController

Para uso interno de los representadores de plataformas.

IImageElement
IItemsLayout
IItemsView<T>

Esta interfaz es para uso interno de los representadores de plataformas.

IItemViewController

Para uso interno de los representadores de plataformas.

ILayout

Interfaz que indica el comportamiento de diseño y expone el evento LayoutChanged.

ILayoutController

Para uso interno de los representadores de plataformas.

IListProxy

Esta interfaz es para uso interno de los representadores de plataformas.

IListViewController

Para uso interno de los representadores de plataformas.

IMasterDetailPageController

Para uso interno de los representadores de plataformas.

IMenuItemController

Para uso interno de los representadores de plataformas.

IMessagingCenter

Permite que los modelos de vista y otros componentes se comuniquen mediante la adhesión a un contrato de mensaje.

IMultiPageController<T>

Clase base para los controladores de varias páginas.

IMultiValueConverter
INativeElementView

Interfaz que contiene una propiedad de solo lectura que devuelve la vista nativa específica de la plataforma para un elemento de Xamarin.Forms.

INavigation

Interfaz de resumen de la navegación específica de la plataforma.

INavigationPageController

Para uso interno de los representadores de plataformas.

IOpenGlViewController

Para uso interno de los representadores de plataformas.

IPageContainer<T>

Interfaz que define un contenedor para Page y expone una propiedad CurrentPage.

IPageController

Para uso interno de los representadores de plataformas.

IPanGestureController

Para uso interno de los representadores de plataformas.

IPinchGestureController

Para uso interno de los representadores de plataformas.

IPlatformElementConfiguration<TPlatform,TElement>

Interfaz de marcador para devolver elementos de configuración específicos de la plataforma.

IQueryAttributable
IRegisterable

Interfaz de marcado de uso interno que indica los tipos que se pueden registrar con el registrador interno.

IScrollViewController

Para uso interno de los representadores de plataformas.

ISearchBarController

Para uso interno de los representadores de plataformas.

ISearchHandlerController

Define la interfaz para controlar el comportamiento del controlador de búsqueda.

IShellAppearanceElement

Interfaz que define los colores de la barra de pestañas en las aplicaciones del shell.

IShellContentController

Extiende IElementController para definir los métodos apropiados en una página de contenido de las aplicaciones del shell.

IShellContentInsetObserver

Define una interfaz para observar los cambios realizados en las dimensiones del bajorrelieve.

IShellController

Extiende IPageController para las aplicaciones del shell.

IShellItemController

Extiende IElementController para trabajar con las partes de una aplicación del shell.

IShellSectionController

Extiende IElementController con métodos específicos de las aplicaciones del shell.

ISliderController
IStreamImageSource

Esta interfaz es para uso interno de los representadores de plataformas.

ISwipeGestureController

Para uso interno de los representadores de plataformas.

ISwipeItem
ISwipeViewController
ITableModel

Esta interfaz es para uso interno de los representadores de plataformas.

ITableViewController

Para uso interno de los representadores de plataformas.

ITabStopElement
ITemplatedItemsList<TItem>

Esta interfaz es para uso interno de los representadores de plataformas.

ITemplatedItemsListScrollToRequestedEventArgs

Esta interfaz es para uso interno de los representadores de plataformas.

ITemplatedItemsView<TItem>

Esta interfaz es para uso interno de los representadores de plataformas.

IValueConverter

Interfaz que define los métodos para la conversión de valores bidireccionales entre tipos.

IViewContainer<T>

Tipo del elemento que se puede agregar al contenedor.

IViewController

Esta interfaz es para uso interno de los representadores de plataformas.

IVisual
IVisualElementController

Para uso interno de los representadores de plataformas.

IWebViewController

Para uso interno de los representadores de plataformas.

IWebViewDelegate

Esta interfaz es para uso interno de los representadores de plataformas.

RelativeLayout.IRelativeList<T>

IList<T> de View usado por un RelativeLayout.

Enumeraciones

AbsoluteLayoutFlags

Marcas que se usan para modificar la interpretación de los límites de diseño en un AbsoluteLayout.

AccessKeyPlacement

Enumera la ubicación de la clave de acceso relativa al control que describe la clave de acceso.

Aspect

Define cómo se muestra una imagen.

BindingMode

Dirección de la propagación de cambios para enlaces.

Button.ButtonContentLayout.ImagePosition

Enumera las ubicaciones de las imágenes dentro de un botón.

ButtonsMask

Marca valores que representan botones del ratón.

ClearButtonVisibility
ConstraintType

Enumeración que especifica si una restricción es constante, relativa a una vista o relativa a su elemento principal.

DataPackageOperation
DependencyFetchTarget

Enumeración que especifica si Get<T>(DependencyFetchTarget) debería devolver una referencia a una instancia global o nueva.

EditorAutoSizeOption

Enumera valores que controlan si un editor cambiará de tamaño para adaptar la entrada cuando el usuario lo escriba.

EffectiveFlowDirection

Enumera marcas que indican si la dirección del diseño se ha establecido explícitamente y si la dirección del diseño es de derecha a izquierda.

FlexAlignContent

Enumera valores que controlan el modo de alineación de varias filas o columnas de elementos secundarios.

FlexAlignItems

Enumera valores que controlan la alineación de los elementos secundarios.

FlexAlignSelf

Enumera los valores que controlan si un elemento secundario invalida (y cómo) los atributos de alineación aplicados por su elemento principal.

FlexDirection

Enumera valores que especifican las direcciones de diseño de fila y columna, relativas a las direcciones de la configuración regional del dispositivo.

FlexJustify

Enumera valores que describen cómo se justifican los elementos secundarios cuando hay espacio adicional en torno a ellos.

FlexPosition

Enumera los valores que controlan cómo se interpretan las coordenadas de diseño al especificar las posiciones de los elementos secundarios.

FlexWrap

Enumera los valores que controlan si los elementos de un FlexLayout se van a ajustar (y cómo).

FlowDirection

Enumera valores que controlan la dirección de diseño de las vistas.

FlyoutBehavior

Enumeración de los modos para el menú raíz de una aplicación del shell.

FlyoutDisplayOptions

Enumera los modos de presentación del control flotante en una aplicación del shell.

FlyoutHeaderBehavior

Enumeración de modos seguidos por FlyoutHeader.

FlyoutLayoutBehavior
FontAttributes

Enumera valores que describen los estilos de fuente.

GestureState

Enumeración que especifica los diversos estados de un gesto.

GestureStatus

Enumera los posibles estados de un gesto.

GridUnitType

Enumera los valores que controlan cómo se interpreta la propiedad Value para definiciones de filas y columnas.

IndicatorShape
InitializationFlags
ItemSizingStrategy
ItemsLayoutOrientation
ItemsUpdatingScrollMode
KeyboardFlags

Enumera las marcas de la opción del teclado que controla el uso de mayúsculas, el corrector ortográfico y el comportamiento de las sugerencias.

LayoutAlignment

Valores que representan LayoutAlignment.

LineBreakMode

Enumeración que especifica diversas opciones de salto de línea.

ListViewCachingStrategy

Enumera las estrategias de almacenamiento en caché de un ListView.

ListViewSelectionMode

Enumera los valores que controlan si los elementos de una vista de lista se pueden seleccionar o no.

MasterBehavior

Enumera los valores que controlan cómo se muestra el contenido de detalle en una página de detalles maestra.

MeasureFlags

Enumera los valores que indican si los márgenes se incluyen al diseñar las ventanas.

NamedSize

Representa los tamaños de fuente definidos previamente.

OpenSwipeItem
OSAppTheme
PresentationMode
RelativeBindingSourceMode
ReturnType

Enumera los estilos del botón Volver.

ScrollBarVisibility

Enumera las condiciones bajo las que estarán visibles las barras de desplazamiento.

ScrollMode
ScrollOrientation

Enumeración que especifica las direcciones de desplazamiento vertical u horizontal.

ScrollToMode

Enumera los valores que describen cómo se realiza una solicitud de desplazamiento.

ScrollToPosition

Enumera valores que describen una solicitud de desplazamiento.

SearchBoxVisibility
SelectionMode
SeparatorVisibility

Enumera los valores que controlan la visibilidad de los separadores de elementos de la lista.

ShellNavigationSource

Enumera los motivos de un evento de navegación en las aplicaciones del shell.

SnapPointsAlignment
SnapPointsType
StackOrientation

Las orientaciones que puede tener un StackLayout.

Stretch
SweepDirection
SwipeBehaviorOnInvoked
SwipeDirection

Enumera las direcciones del gesto de deslizar el dedo.

SwipeMode
TableIntent

TableIntent proporciona sugerencias al representador sobre cómo se usará una tabla.

TabsStyle

Enumera los estilos de pestaña para las páginas con pestañas.

TargetIdiom

Indica el tipo de dispositivo en el que trabaja Xamarin.Forms.

TargetPlatform

Indica el tipo de sistema operativo con el que está trabajando Xamarin.Forms.

TextAlignment

Enumera los valores que controlan la alineación del texto.

TextDecorations

Enumeración de marcado que define las decoraciones de texto.

TextTransform
TextType
ToolbarItemOrder

Enumeración que especifica si el ToolbarItem aparece en la superficie de la barra de herramientas principal o de la secundaria.

ViewState

Desusado. No utilizar.

WebNavigationEvent

Contiene valores que indican por qué se ha generado un evento de navegación.

WebNavigationResult

Enumera los valores que indican el resultado de una navegación web.

Delegados

BindableProperty.BindingPropertyChangedDelegate

Delegado para BindableProperty.PropertyChanged.

BindableProperty.BindingPropertyChangedDelegate<TPropertyType>

Delegado fuertemente tipado para BindableProperty.PropertyChanged.

BindableProperty.BindingPropertyChangingDelegate

Delegado de BindableProperty.PropertyChanging.

BindableProperty.BindingPropertyChangingDelegate<TPropertyType>

Delegado fuertemente tipado para BindableProperty.PropertyChanging.

BindableProperty.CoerceValueDelegate

Delegado para BindableProperty.CoerceValue.

BindableProperty.CoerceValueDelegate<TPropertyType>

Delegado fuertemente tipado de BindableProperty.CoerceValue.

BindableProperty.CreateDefaultValueDelegate

Delegado fuertemente tipado para BindableProperty.DefaultValueCreator.

BindableProperty.CreateDefaultValueDelegate<TDeclarer,TPropertyType>

Delegado de BindableProperty.DefaultValueCreator.

BindableProperty.ValidateValueDelegate

Delegado para BindableProperty.ValidateValue.

BindableProperty.ValidateValueDelegate<TPropertyType>

Delegado fuertemente tipado de BindableProperty.ValidateValue.

CollectionSynchronizationCallback

Delegado de devolución de llamada en EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback).

PropertyChangingEventHandler

Delegado del evento PropertyChanging.

Comentarios

Xamarin.Forms is a cross-platform, natively-backed UI toolkit abstraction that allows developers to create user interfaces that can be shared across Android, iOS, and Windows Phone. Because the user interfaces use the native controls of the target platforms, they have the appearance and, importantly, the responsiveness of natively built apps.

Xamarin.Forms Solution Architecture

Cross-Platform Project

The user-experience of a Xamarin.Forms application is usually defined in a cross-platform shared project (either a Portable Class Library or a Shared Project) and combined with platform-specific projects that, at the least, initialize the native platform rendering (note the call to Forms.Init() in the platform code samples below) and, more generally, extend the user-experience and user-interface in platform-specific manners (for instance, by accessing platform-specific sensors or capabilities).

For example, the developer can create a cross-platform Xamarin.Forms Label and display it with the following code in the shared project:

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,
                },
        };
    }
}

This code results in a centered label on the target platforms:

While more complicated layouts with more useful user interfaces are more typical, this example is useful for clearly illustrating the shared and platform-specific code that Xamarin.Forms uses to create and display the code on the target platforms. The code in the following discussion is created by Visual Studio in the target platform projects when the developer creates a new Xamarin.Forms project. In each case, a platform-specific Forms.Init() method is called to intitialize forms before any other method that depends on Xamarin.Forms is called.

iOS Platform Code

On the iOS platform, Visual Studio registers a subclass of the framework class Xamarin.Forms.Platform.iOS.FormsApplicationDelegate as the entry point of the application, and immediately makes a call to 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 Platform Code

The entry point on Android is a subclass of the framework class Xamarin.Forms.Platform.Android.FormsAppCompatActivity, and its OnCreate method must configure the tab bar and toolbars and call its base method before calling Forms.Init.

[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 Code

The entry point for a Xamarin.Forms app on UWP is just the constructor for a Windows.UI.Xaml.Application in App.xaml.cs in the UWP platform project. However, the application lifecycle on UWP is such that the call to Forms.Init must take place inside the OnLaunched method, and is guarded against being run more than once. The necessary code is beyond the scope of this documentation, but the curious developer is encouraged to create a test Xamarin.Forms solution and study the code in the App.xaml.cs file for more details

Elements in Xamarin.Forms

Important types in the Xamarin.Forms namespace include Page, View, and Layout. Pages typically correspond with controller objects (Activities in the Android world, UIViewControllers in the iOS world), Views with controls or widgets, and Layouts arrange Views on other Views. These types are all derived from Element.

Model-View-ViewModel and Xamarin.Forms

Application developers use the Model-View-ViewModel (MVVM) pattern to create Xamarin.Forms apps that cleanly separate the concerns of data presentation and user interface from the concerns of data storage and manipulation. The Xamarin.Forms framework enables this by providing, among a few other related types, the BindableObject and BindableProperty classes. Objects that inherit from BindableObject can be bound to members of type BindableProperty on other objects.

A BindableObject maintains dictionary of BindableProperty names and an association with their corresponding binding contexts--simply the object on which the BindableProperty is defined and that the application developer has assigned to the BindingContext property--through a Binding. See BindableObject for more information.

Consulte también