Element Element Class

Definition

Provides the base class for all Xamarin.Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Xamarin.Forms hierarchy.

public abstract class Element : Xamarin.Forms.BindableObject, Xamarin.Forms.IElementController, Xamarin.Forms.Internals.INameScope
type Element = class
    inherit BindableObject
    interface IElement
    interface INameScope
    interface IElementController
    interface IStyleSelectable
Inheritance
Derived
Implements

Remarks

Important categories of visual elements are noted in the following table:

Class Description
VisualElement A Element that occupies an area on the screen, has a visual appearance, and can obtain touch input.
Cell Cells are elements meant to be added to ListView or TableView.
Page A VisualElement that occupies most or all of the screen and contains a single child.
Layout Layout have a single child of type View, while subclasses of Layout<T> have a collection of multiple children views, including other layouts.
Controls and specialized Views The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as Buttons and TableViews.

Constructors

Element() Element()

Protected constructor used to initialize a the element.

Fields

ClassIdProperty ClassIdProperty

Identifies the ClassId bindable property.

MenuProperty MenuProperty

Backing store for the attached menu property.

Properties

AutomationId AutomationId

Gets or sets a value that allows the automation framework to find and interact with this element.

BindingContext BindingContext

Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this BindableObject.

(Inherited from BindableObject)
ClassId ClassId

Gets or sets a value used to identify a collection of semantically similar elements.

EffectControlProvider EffectControlProvider

For internal use by the Xamarin.Forms platform.

Effects Effects

A list of the effects that are applied to this item.

Id Id

Gets a value that can be used to uniquely identify an element through the run of an application.

LogicalChildren LogicalChildren

For internal use by the Xamarin.Forms platform.

Parent Parent

Gets or sets the parent element of the element.

ParentView ParentView

Gets the element which is the closest ancestor of this element that is a VisualElement.

Platform Platform

For internal use by the Xamarin.Forms platform.

RealParent RealParent

For internal use by the Xamarin.Forms platform.

StyleId StyleId

Gets or sets a user defined value to uniquely identify the element.

Methods

ApplyBindings() ApplyBindings()

Apply the bindings to BindingContext.

(Inherited from BindableObject)
ClearValue(BindableProperty) ClearValue(BindableProperty)

Clears any value set by Xamarin.Forms.BindableObject.SetValue for property.

(Inherited from BindableObject)
ClearValue(BindablePropertyKey) ClearValue(BindablePropertyKey)

Clears any value set by Xamarin.Forms.BindableObject.SetValue for the property that is identified by propertyKey.

(Inherited from BindableObject)
Descendants() Descendants()

For internal use by the Xamarin.Forms platform.

EffectIsAttached(String) EffectIsAttached(String)

For internal use by the Xamarin.Forms platform.

GetMenu(BindableObject) GetMenu(BindableObject)

Gets the Menu object for bindable.

GetValue(BindableProperty) GetValue(BindableProperty)

Returns the value that is contained the BindableProperty.

(Inherited from BindableObject)
GetValues(BindableProperty, BindableProperty) GetValues(BindableProperty, BindableProperty)

For internal use by the Xamarin.Forms platform.

(Inherited from BindableObject)
GetValues(BindableProperty, BindableProperty, BindableProperty) GetValues(BindableProperty, BindableProperty, BindableProperty)

For internal use by the Xamarin.Forms platform.

(Inherited from BindableObject)
IsSet(BindableProperty) IsSet(BindableProperty)

Returns true if the target property exists and has been set.

(Inherited from BindableObject)
OnBindingContextChanged() OnBindingContextChanged()

Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event.

OnChildAdded(Element) OnChildAdded(Element)

Invoked whenever the ChildAdded event needs to be emitted. Implement this method to add class handling for this event.

OnChildRemoved(Element) OnChildRemoved(Element)

Invoked whenever the ChildRemoved event needs to be emitted. Implement this method to add class handling for this event.

OnParentSet() OnParentSet()

Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent.

OnPropertyChanged(String) OnPropertyChanged(String)

Method that is called when a bound property is changed.

OnPropertyChanging(String) OnPropertyChanging(String)

Call this method from a child class to notify that a change is going to happen on a property.

(Inherited from BindableObject)
RemoveBinding(BindableProperty) RemoveBinding(BindableProperty)

Removes a previously set binding.

(Inherited from BindableObject)
RemoveDynamicResource(BindableProperty) RemoveDynamicResource(BindableProperty)

Removes a previously set dynamic resource

SetBinding(BindableProperty, BindingBase) SetBinding(BindableProperty, BindingBase)

Assigns a binding to a property.

(Inherited from BindableObject)
SetDynamicResource(BindableProperty, String) SetDynamicResource(BindableProperty, String)

Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key.

SetMenu(BindableObject, Menu) SetMenu(BindableObject, Menu)

Sets the menu for bindable.

SetValue(BindableProperty, Object) SetValue(BindableProperty, Object)

Sets the value of the specified property.

(Inherited from BindableObject)
SetValue(BindablePropertyKey, Object) SetValue(BindablePropertyKey, Object)

Sets the value of the propertyKey.

(Inherited from BindableObject)
SetValueCore(BindableProperty, Object, SetValueFlags) SetValueCore(BindableProperty, Object, SetValueFlags)

For internal use by the Xamarin.Forms platform.

(Inherited from BindableObject)
SetValueFromRenderer(BindableProperty, Object) SetValueFromRenderer(BindableProperty, Object)

For internal use by the Xamarin.Forms platform.

SetValueFromRenderer(BindablePropertyKey, Object) SetValueFromRenderer(BindablePropertyKey, Object)

For internal use by the Xamarin.Forms platform.

UnapplyBindings() UnapplyBindings()

Unapplies all previously set bindings.

(Inherited from BindableObject)

Events

BindingContextChanged BindingContextChanged

Raised whenever the BindingContext property changes.

(Inherited from BindableObject)
ChildAdded ChildAdded

Occurs whenever a child element is added to the element.

ChildRemoved ChildRemoved

Occurs whenever a child element is removed from the element.

DescendantAdded DescendantAdded

Occurs whenever a child element is added to the elements subtree.

DescendantRemoved DescendantRemoved

Occurs whenever a child element is removed from the elements subtree.

PlatformSet PlatformSet

For internal use by the Xamarin.Forms platform.

PropertyChanged PropertyChanged

Raised when a property has changed.

(Inherited from BindableObject)
PropertyChanging PropertyChanging

Raised when a property is about to change.

(Inherited from BindableObject)

Explicit Interface Implementations

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

For internal use by the Xamarin.Forms platform.

(Inherited from BindableObject)
IElementController.SetValueFromRenderer(BindableProperty, Object) IElementController.SetValueFromRenderer(BindableProperty, Object)

For internal use by the Xamarin.Forms platform.

INameScope.FindByName(String) INameScope.FindByName(String)

For internal use only.

INameScope.RegisterName(String, Object) INameScope.RegisterName(String, Object)

For internal use only.

INameScope.RegisterName(String, Object, IXmlLineInfo) INameScope.RegisterName(String, Object, IXmlLineInfo)

For internal use only.

INameScope.UnregisterName(String) INameScope.UnregisterName(String)

For internal use only.

Extension Methods

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Creates and applies a binding to a property.

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)

Creates and applies a binding from an expression.

GetGroup<TView,TItem>(TItem) GetGroup<TView,TItem>(TItem)

For internal use by platform renderers.

GetGroupHeaderContent<TView,TItem>(TItem) GetGroupHeaderContent<TView,TItem>(TItem)

For internal use by platform renderers.

GetIndex<TView,TItem>(TItem) GetIndex<TView,TItem>(TItem)

For internal use by platform renderers.

GetIsGroupHeader<TView,TItem>(TItem) GetIsGroupHeader<TView,TItem>(TItem)

For internal use by platform renderers.

SetIsGroupHeader<TView,TItem>(TItem, Boolean) SetIsGroupHeader<TView,TItem>(TItem, Boolean)

For internal use by platform renderers.

FindByName<T>(Element, String) FindByName<T>(Element, String)

Returns the instance of type T that has name name in the scope that includes element.

LoadFromXaml<TXaml>(TXaml, String) LoadFromXaml<TXaml>(TXaml, String)

Returns an initialized view by loading the specified xaml.

LoadFromXaml<TXaml>(TXaml, Type) LoadFromXaml<TXaml>(TXaml, Type)

Returns a TXaml with the properties that are defined in the application manifest for callingType.

Applies to