Xamarin.Forms 4.1.0.778454 (4.1.0 Service Release 5) API Changes

Namespace Xamarin.Forms

Type Changed: Xamarin.Forms.Application

Added method:

protected virtual void CleanUp ();

Type Changed: Xamarin.Forms.Device

Added methods:

public static System.Threading.Tasks.Task<System.Threading.SynchronizationContext> GetMainThreadSynchronizationContextAsync ();
public static System.Threading.Tasks.Task InvokeOnMainThreadAsync (System.Action action);
public static System.Threading.Tasks.Task InvokeOnMainThreadAsync (System.Func<System.Threading.Tasks.Task> funcTask);
public static System.Threading.Tasks.Task<T> InvokeOnMainThreadAsync<T> (System.Func<System.Threading.Tasks.Task<T>> funcTask);
public static System.Threading.Tasks.Task<T> InvokeOnMainThreadAsync<T> (System.Func<T> func);

Type Changed: Xamarin.Forms.GridItemsLayout

Added fields:

public static BindableProperty HorizontalItemSpacingProperty;
public static BindableProperty VerticalItemSpacingProperty;

Added properties:

public double HorizontalItemSpacing { get; set; }
public double VerticalItemSpacing { get; set; }

Type Changed: Xamarin.Forms.ListItemsLayout

Removed fields:

public static IItemsLayout HorizontalList;
public static IItemsLayout VerticalList;

Added fields:

public static IItemsLayout Horizontal;
public static BindableProperty ItemSpacingProperty;
public static IItemsLayout Vertical;

Added property:

public double ItemSpacing { get; set; }

Type Changed: Xamarin.Forms.NamedSize

Added values:

Body = 5,
Caption = 9,
Header = 6,
Subtitle = 8,
Title = 7,

Type Changed: Xamarin.Forms.SelectableItemsView

Modified properties:

-public System.Collections.Generic.IList<object> SelectedItems { get; set; }
+public System.Collections.Generic.IList<object> SelectedItems { get; }

Type Changed: Xamarin.Forms.TemplatedPage

Added methods:

protected object GetTemplateChild (string name);
protected virtual void OnApplyTemplate ();
protected override void OnChildRemoved (Element child);

Type Changed: Xamarin.Forms.TemplatedView

Added methods:

protected object GetTemplateChild (string name);
protected virtual void OnApplyTemplate ();
protected override void OnChildRemoved (Element child);

New Type: Xamarin.Forms.ActivationFlags

[Serializable]
[Flags]
public enum ActivationFlags {
	NoCss = 1,
}

New Type: Xamarin.Forms.CheckBox

public class CheckBox : Xamarin.Forms.View, System.ComponentModel.INotifyPropertyChanged, IAnimatable, IBorderElement, Xamarin.Forms.IElementConfiguration<CheckBox>, IElementController, ITabStopElement, IViewController, IVisualElementController, Internals.IDynamicResourceHandler, Internals.IGestureController, Internals.INameScope, Internals.INavigationProxy {
	// constructors
	public CheckBox ();
	// fields
	public static BindableProperty ColorProperty;
	public static BindableProperty IsCheckedProperty;
	public static const string IsCheckedVisualState = "IsChecked";
	// properties
	public override Color Color { get; set; }
	public bool IsChecked { get; set; }
	// events
	public event System.EventHandler<CheckedChangedEventArgs> CheckedChanged;
	// methods
	protected override void ChangeVisualState ();
	public virtual Xamarin.Forms.IPlatformElementConfiguration<T,Xamarin.Forms.CheckBox> On<T> ();
}

New Type: Xamarin.Forms.CheckedChangedEventArgs

public class CheckedChangedEventArgs : System.EventArgs {
	// constructors
	public CheckedChangedEventArgs (bool value);
	// properties
	public bool Value { get; }
}

New Type: Xamarin.Forms.ItemsLayoutTypeConverter

public class ItemsLayoutTypeConverter : Xamarin.Forms.TypeConverter {
	// constructors
	public ItemsLayoutTypeConverter ();
	// methods
	public override object ConvertFromInvariantString (string value);
}

Namespace Xamarin.Forms.Internals

Type Changed: Xamarin.Forms.Internals.Registrar

Added methods:

public static void RegisterAll (System.Type[] attrTypes, Xamarin.Forms.ActivationFlags flags);
public static void RegisterEffects (string resolutionName, Xamarin.Forms.ExportEffectAttribute[] effectAttributes);
public static void RegisterRenderers (Xamarin.Forms.HandlerAttribute[] attributes);
public static void RegisterStylesheets ();

Type Changed: Xamarin.Forms.Internals.ResourceLoader

Type Changed: Xamarin.Forms.Internals.ResourceLoader.ResourceLoadingQuery

Added property:

public object Instance { get; set; }

Type Changed: Xamarin.Forms.Internals.Ticker

Added method:

protected virtual Ticker GetTickerInstance ();

New Type: Xamarin.Forms.Internals.Profile

public struct Profile, System.IDisposable {
	// fields
	public static System.Collections.Generic.List<Profile.Datum> Data;
	// methods
	public virtual void Dispose ();
	public static void FrameBegin (string name, string id, int line);
	public static void FrameEnd ();
	public static void FramePartition (string id, int line);
	public static void Start ();
	public static void Stop ();

	// inner types
	public struct Datum {
		// fields
		public int Depth;
		public string Id;
		public int Line;
		public string Name;
		public long Ticks;
	}
}

Namespace Xamarin.Forms.PlatformConfiguration.iOSSpecific

Type Changed: Xamarin.Forms.PlatformConfiguration.iOSSpecific.Application

Added field:

public static Xamarin.Forms.BindableProperty EnableAccessibilityScalingForNamedFontSizesProperty;

Added methods:

public static bool GetEnableAccessibilityScalingForNamedFontSizes (Xamarin.Forms.BindableObject element);
public static bool GetEnableAccessibilityScalingForNamedFontSizes (this Xamarin.Forms.IPlatformElementConfiguration<Xamarin.Forms.PlatformConfiguration.iOS,Xamarin.Forms.Application> config);
public static void SetEnableAccessibilityScalingForNamedFontSizes (Xamarin.Forms.BindableObject element, bool value);
public static Xamarin.Forms.IPlatformElementConfiguration<Xamarin.Forms.PlatformConfiguration.iOS,Xamarin.Forms.Application> SetEnableAccessibilityScalingForNamedFontSizes (this Xamarin.Forms.IPlatformElementConfiguration<Xamarin.Forms.PlatformConfiguration.iOS,Xamarin.Forms.Application> config, bool value);

Namespace Xamarin.Forms.StyleSheets

Type Changed: Xamarin.Forms.StyleSheets.StyleSheet

Added method:

public static StyleSheet FromResource (string resourcePath, System.Reflection.Assembly assembly, System.Xml.IXmlLineInfo lineInfo);

Namespace Xamarin.Forms

Type Changed: Xamarin.Forms.Forms

Added method:

public static void Initialize (ActivationOptions activation);

New Type: Xamarin.Forms.ActivationOptions

public struct ActivationOptions {
	// constructors
	public ActivationOptions (Android.Content.Context activity, Android.OS.Bundle bundle, System.Reflection.Assembly resourceAssembly);
	// fields
	public Android.Content.Context Activity;
	public Android.OS.Bundle Bundle;
	public ActivationOptions.EffectScope[] EffectScopes;
	public ActivationFlags Flags;
	public HandlerAttribute[] Handlers;
	public System.Reflection.Assembly ResourceAssembly;

	// inner types
	public struct EffectScope {
		// fields
		public ExportEffectAttribute[] Effects;
		public string Name;
	}
}

Namespace Xamarin.Forms.Platform.Android

Type Changed: Xamarin.Forms.Platform.Android.ItemsViewRenderer

Added methods:

protected virtual void LayoutOnPropertyChanged (object sender, System.ComponentModel.PropertyChangedEventArgs propertyChanged);
protected virtual void UpdateItemSpacing ();

New Type: Xamarin.Forms.Platform.Android.CheckBoxRenderer

public class CheckBoxRenderer : Xamarin.Forms.Platform.Android.CheckBoxRendererBase, Android.Runtime.IJavaObject, Android.Views.View.IOnFocusChangeListener, Android.Widget.CompoundButton.IOnCheckedChangeListener, System.IDisposable, Xamarin.Forms.IRegisterable, ITabStop, IVisualElementRenderer {
	// constructors
	public CheckBoxRenderer (Android.Content.Context context);
}

New Type: Xamarin.Forms.Platform.Android.CheckBoxRendererBase

public class CheckBoxRendererBase : Android.Support.V7.Widget.AppCompatCheckBox, Android.Runtime.IJavaObject, Android.Views.View.IOnFocusChangeListener, Android.Widget.CompoundButton.IOnCheckedChangeListener, System.IDisposable, Xamarin.Forms.IRegisterable, ITabStop, IVisualElementRenderer {
	// constructors
	public CheckBoxRendererBase (Android.Content.Context context);
	public CheckBoxRendererBase (Android.Content.Context context, int defStyleAttr);
	// properties
	protected Android.Support.V7.Widget.AppCompatCheckBox Control { get; }
	protected Xamarin.Forms.CheckBox Element { get; }
	// events
	public event System.EventHandler<VisualElementChangedEventArgs> ElementChanged;
	public event System.EventHandler<System.ComponentModel.PropertyChangedEventArgs> ElementPropertyChanged;
	// methods
	protected override void Dispose (bool disposing);
	protected virtual Android.Content.Res.ColorStateList GetColorStateList ();
	public override void Invalidate ();
	protected virtual void OnElementChanged (Xamarin.Forms.Platform.Android.ElementChangedEventArgs<Xamarin.Forms.CheckBox> e);
	protected virtual void OnElementPropertyChanged (object sender, System.ComponentModel.PropertyChangedEventArgs e);
	public virtual void SetLabelFor (int? id);
}

Namespace Xamarin.Forms.Platform.Android.AppCompat

Type Changed: Xamarin.Forms.Platform.Android.AppCompat.FrameRenderer

Removed interface:

Xamarin.Forms.IEffectControlProvider

Namespace Xamarin.Forms.Platform.Android.FastRenderers

Type Changed: Xamarin.Forms.Platform.Android.FastRenderers.FrameRenderer

Removed interface:

Xamarin.Forms.IEffectControlProvider

Namespace Xamarin.Forms.Core.Design

New Type: Xamarin.Forms.Core.Design.ItemsLayoutDesignTypeConverter

public class ItemsLayoutDesignTypeConverter : System.ComponentModel.TypeConverter {
	// constructors
	public ItemsLayoutDesignTypeConverter ();
	// properties
	protected System.ComponentModel.TypeConverter.StandardValuesCollection Values { get; set; }
	// methods
	public override bool CanConvertFrom (System.ComponentModel.ITypeDescriptorContext context, System.Type sourceType);
	public override System.ComponentModel.TypeConverter.StandardValuesCollection GetStandardValues (System.ComponentModel.ITypeDescriptorContext context);
	public override bool GetStandardValuesExclusive (System.ComponentModel.ITypeDescriptorContext context);
	public override bool GetStandardValuesSupported (System.ComponentModel.ITypeDescriptorContext context);
}

Namespace Xamarin.Forms.Platform.iOS

Type Changed: Xamarin.Forms.Platform.iOS.ItemsViewLayout

Added method:

protected virtual void UpdateItemSpacing ();

Type Changed: Xamarin.Forms.Platform.iOS.Platform

Added method:

protected virtual void Dispose (bool disposing);

Type Changed: Xamarin.Forms.Platform.iOS.WebViewRenderer

Added interface:

ITabStop

Type Changed: Xamarin.Forms.Platform.iOS.WkWebViewRenderer

Added interface:

ITabStop

New Type: Xamarin.Forms.Platform.iOS.CheckBoxRenderer

public class CheckBoxRenderer : Xamarin.Forms.Platform.iOS.CheckBoxRendererBase`1[Xamarin.Forms.Platform.iOS.FormsCheckBox], System.IDisposable, Xamarin.Forms.IEffectControlProvider, Xamarin.Forms.IRegisterable, ITabStop, IVisualElementRenderer, IVisualNativeElementRenderer {
	// constructors
	public CheckBoxRenderer ();
	// methods
	protected override FormsCheckBox CreateNativeControl ();
}

New Type: Xamarin.Forms.Platform.iOS.CheckBoxRendererBase`1

public abstract class CheckBoxRendererBase`1 : Xamarin.Forms.Platform.iOS.ViewRenderer`2[Xamarin.Forms.CheckBox,T], System.IDisposable, Xamarin.Forms.IEffectControlProvider, Xamarin.Forms.IRegisterable, ITabStop, IVisualElementRenderer, IVisualNativeElementRenderer {
	// constructors
	protected CheckBoxRendererBase`1 ();
	// properties
	protected virtual float MinimumSize { get; }
	// methods
	protected override T CreateNativeControl ();
	protected override void Dispose (bool disposing);
	public override Xamarin.Forms.SizeRequest GetDesiredSize (double widthConstraint, double heightConstraint);
	public override void LayoutSubviews ();
	protected override void OnElementChanged (Xamarin.Forms.Platform.iOS.ElementChangedEventArgs<Xamarin.Forms.CheckBox> e);
	protected override void OnElementPropertyChanged (object sender, System.ComponentModel.PropertyChangedEventArgs e);
	protected override void SetAccessibilityLabel ();
	public override CoreGraphics.CGSize SizeThatFits (CoreGraphics.CGSize size);
	protected virtual void UpdateTintColor ();
}

New Type: Xamarin.Forms.Platform.iOS.FormsCheckBox

public class FormsCheckBox : UIKit.UIButton {
	// constructors
	public FormsCheckBox ();
	// fields
	public System.EventHandler CheckedChanged;
	// properties
	public Xamarin.Forms.Color CheckBoxTintColor { get; set; }
	public override bool Enabled { get; set; }
	public bool IsChecked { get; set; }
	public bool IsEnabled { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	protected virtual UIKit.UIImage GetCheckBoximage ();
}

Namespace Xamarin.Forms.Platform.MacOS

Type Changed: Xamarin.Forms.Platform.MacOS.FormsApplicationDelegate

Added property:

public System.Func<Xamarin.Forms.MenuItem,AppKit.NSMenuItem> NativeMenuItemCreator { get; set; }

Added method:

protected virtual void SetupMainAppMenu (AppKit.NSMenu nativeMenu);

Type Changed: Xamarin.Forms.Platform.MacOS.ImageRenderer

Modified base type:

-Xamarin.Forms.Platform.MacOS.ViewRenderer`2[Xamarin.Forms.Image,AppKit.NSView]
+Xamarin.Forms.Platform.MacOS.ViewRenderer`2[Xamarin.Forms.Image,AppKit.NSImageView]

Added interface:

IImageVisualElementRenderer

Added methods:

protected System.Threading.Tasks.Task SetImage (Xamarin.Forms.Image oldElement);
protected virtual System.Threading.Tasks.Task TrySetImage (Xamarin.Forms.Image previous);

New Type: Xamarin.Forms.Platform.MacOS.CheckBoxRenderer

public class CheckBoxRenderer : Xamarin.Forms.Platform.MacOS.ViewRenderer`2[Xamarin.Forms.CheckBox,AppKit.NSButton], System.IDisposable, Xamarin.Forms.IEffectControlProvider, Xamarin.Forms.IRegisterable, ITabStop, IVisualElementRenderer, IVisualNativeElementRenderer {
	// constructors
	public CheckBoxRenderer ();
	// methods
	protected override void Dispose (bool disposing);
	protected override void OnElementChanged (Xamarin.Forms.Platform.MacOS.ElementChangedEventArgs<Xamarin.Forms.CheckBox> e);
}

New Type: Xamarin.Forms.Platform.MacOS.IImageVisualElementRenderer

public interface IImageVisualElementRenderer : System.IDisposable, Xamarin.Forms.IRegisterable, IVisualElementRenderer, IVisualNativeElementRenderer {
	// properties
	public virtual bool IsDisposed { get; }
	// methods
	public virtual AppKit.NSImageView GetImage ();
	public virtual void SetImage (AppKit.NSImage image);
}

New Type: Xamarin.Forms.Platform.MacOS.ImageElementManager

public static class ImageElementManager {
	// methods
	public static void Dispose (IImageVisualElementRenderer renderer);
	public static void Init (IImageVisualElementRenderer renderer);
	public static void SetAspect (IImageVisualElementRenderer renderer, Xamarin.Forms.IImageElement imageElement);
	public static System.Threading.Tasks.Task SetImage (IImageVisualElementRenderer renderer, Xamarin.Forms.IImageElement imageElement, Xamarin.Forms.Image oldElement);
	public static void SetOpacity (IImageVisualElementRenderer renderer, Xamarin.Forms.IImageElement imageElement);
}

New Type: Xamarin.Forms.Platform.MacOS.ImageExtensions

public static class ImageExtensions {
	// methods
	public static Foundation.NSString ToNSViewContentMode (this Xamarin.Forms.Aspect aspect);
}

Namespace Xamarin.Forms.Platform.Tizen

Type Changed: Xamarin.Forms.Platform.Tizen.ButtonRenderer

Modified base type:

-Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.Button,Xamarin.Forms.Platform.Tizen.Native.Button]
+Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.Button,ElmSharp.Button]

Added method:

protected virtual ElmSharp.Button CreateNativeControl ();

Type Changed: Xamarin.Forms.Platform.Tizen.EntryRenderer

Modified base type:

-Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.Entry,Xamarin.Forms.Platform.Tizen.Native.Entry]
+Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.Entry,ElmSharp.Entry]

Added methods:

protected virtual ElmSharp.Entry CreateNativeControl ();
protected virtual void UpdateTextColor ();

Type Changed: Xamarin.Forms.Platform.Tizen.FrameRenderer

Modified base type:

-Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.Frame,Xamarin.Forms.Platform.Tizen.Native.Canvas]
+Xamarin.Forms.Platform.Tizen.LayoutRenderer

Removed method:

protected override void OnElementChanged (Xamarin.Forms.Platform.Tizen.ElementChangedEventArgs<Xamarin.Forms.Frame> e);

Added method:

protected override void OnElementChanged (Xamarin.Forms.Platform.Tizen.ElementChangedEventArgs<Xamarin.Forms.Layout> e);

Type Changed: Xamarin.Forms.Platform.Tizen.KeyboardExtensions

Removed method:

public static void UpdateKeyboard (this Native.Entry control, Xamarin.Forms.Keyboard keyboard, bool isSpellCheckEnabled, bool isTextPredictionEnabled);

Added method:

public static void UpdateKeyboard (this Native.IEntry control, Xamarin.Forms.Keyboard keyboard, bool isSpellCheckEnabled, bool isTextPredictionEnabled);

Type Changed: Xamarin.Forms.Platform.Tizen.VisualElementRenderer`1

Added methods:

protected virtual void SetAccessibilityDescription (bool initialize);
protected virtual void SetAccessibilityName (bool initialize);
protected virtual void SetIsAccessibilityElement (bool initialize);
protected virtual void SetLabeledBy (bool initialize);

New Type: Xamarin.Forms.Platform.Tizen.AccessibilityExtensions

public static class AccessibilityExtensions {
	// methods
	public static string SetAccessibilityDescription (this ElmSharp.Accessible.IAccessibleObject Control, Xamarin.Forms.Element Element, string _defaultAccessibilityDescription);
	public static string SetAccessibilityName (this ElmSharp.Accessible.IAccessibleObject Control, Xamarin.Forms.Element Element, string _defaultAccessibilityName);
	public static bool? SetIsAccessibilityElement (this ElmSharp.Accessible.IAccessibleObject Control, Xamarin.Forms.Element Element, bool? _defaultIsAccessibilityElement);
	public static void SetLabeledBy (this ElmSharp.Accessible.IAccessibleObject Control, Xamarin.Forms.Element Element);
}

New Type: Xamarin.Forms.Platform.Tizen.ItemsViewRenderer

public class ItemsViewRenderer : Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.ItemsView,Xamarin.Forms.Platform.Tizen.Native.CollectionView], System.IDisposable, Xamarin.Forms.IEffectControlProvider, Xamarin.Forms.IRegisterable, IVisualElementRenderer {
	// constructors
	public ItemsViewRenderer ();
	// methods
	protected override void Dispose (bool disposing);
	protected override void OnElementChanged (Xamarin.Forms.Platform.Tizen.ElementChangedEventArgs<Xamarin.Forms.ItemsView> e);
}

Namespace Xamarin.Forms.Platform.Tizen.Native

Type Changed: Xamarin.Forms.Platform.Tizen.Native.Button

Added interface:

IButton

Type Changed: Xamarin.Forms.Platform.Tizen.Native.EditfieldEntry

Added interface:

IEntry

Type Changed: Xamarin.Forms.Platform.Tizen.Native.Entry

Added interface:

IEntry

Type Changed: Xamarin.Forms.Platform.Tizen.Native.SearchBar

Added interface:

IEntry

Type Changed: Xamarin.Forms.Platform.Tizen.Native.ToolbarItemButton

Added interface:

IButton

New Type: Xamarin.Forms.Platform.Tizen.Native.CollectionView

public class CollectionView : ElmSharp.Box, ICollectionViewController {
	// constructors
	public CollectionView (ElmSharp.EvasObject parent);
	// properties
	public ItemAdaptor Adaptor { get; set; }
	public ICollectionViewLayoutManager LayoutManager { get; set; }
	protected ElmSharp.Scroller Scroller { get; }
	public int SelectedItemIndex { get; set; }
	public CollectionViewSelectionMode SelectionMode { get; set; }
	public Xamarin.Forms.SnapPointsType SnapPointsType { get; set; }
	// methods
	protected virtual ElmSharp.Scroller CreateScroller (ElmSharp.EvasObject parent);
	public void ItemMeasureInvalidated (int index);
	public void ScrollTo (int index, Xamarin.Forms.ScrollToPosition position, bool animate);
	public void ScrollTo (object item, Xamarin.Forms.ScrollToPosition position, bool animate);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.CollectionViewSelectionMode

[Serializable]
public enum CollectionViewSelectionMode {
	None = 0,
	Single = 1,
}

New Type: Xamarin.Forms.Platform.Tizen.Native.EmptyItemAdaptor

public class EmptyItemAdaptor : Xamarin.Forms.Platform.Tizen.Native.ItemTemplateAdaptor, System.Collections.Specialized.INotifyCollectionChanged, IEmptyAdaptor {
	// constructors
	public EmptyItemAdaptor (Xamarin.Forms.ItemsView itemsView, System.Collections.IEnumerable items, Xamarin.Forms.DataTemplate template);
	// methods
	public static EmptyItemAdaptor Create (Xamarin.Forms.ItemsView itemsView);
	public override ElmSharp.Size MeasureItem (int widthConstraint, int heightConstraint);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.GridLayoutManager

public class GridLayoutManager : ICollectionViewLayoutManager {
	// constructors
	public GridLayoutManager (bool isHorizontal, int span);
	public GridLayoutManager (bool isHorizontal, int span, Xamarin.Forms.ItemSizingStrategy sizingStrategy);
	// properties
	public virtual ICollectionViewController CollectionView { get; set; }
	public virtual bool IsHorizontal { get; }
	public int Span { get; }
	// methods
	public virtual ElmSharp.Rect GetItemBound (int index);
	public virtual ElmSharp.Size GetScrollCanvasSize ();
	public virtual void ItemInserted (int inserted);
	public virtual void ItemMeasureInvalidated (int index);
	public virtual void ItemRemoved (int removed);
	public virtual void ItemSourceUpdated ();
	public virtual void ItemUpdated (int index);
	public virtual void LayoutItems (ElmSharp.Rect bound, bool force);
	public virtual void Reset ();
	public virtual void SizeAllocated (ElmSharp.Size size);
	public void UpdateSpan (int span);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.IButton

public interface IButton {
	// properties
	public virtual Xamarin.Forms.FontAttributes FontAttributes { get; set; }
	public virtual string FontFamily { get; set; }
	public virtual double FontSize { get; set; }
	public virtual Image Image { get; set; }
	public virtual string Text { get; set; }
	public virtual ElmSharp.Color TextColor { get; set; }
	// methods
	public virtual ElmSharp.Size Measure (int availableWidth, int availableHeight);
	public virtual void UpdateStyle (string style);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ICollectionViewController

public interface ICollectionViewController {
	// properties
	public virtual int Count { get; }
	public virtual ElmSharp.Point ParentPosition { get; }
	// methods
	public virtual void ContentSizeUpdated ();
	public virtual ElmSharp.Size GetItemSize ();
	public virtual ElmSharp.Size GetItemSize (int widthConstraint, int heightConstraint);
	public virtual ElmSharp.Size GetItemSize (int index, int widthConstraint, int heightConstraint);
	public virtual ViewHolder RealizeView (int index);
	public virtual void RequestLayoutItems ();
	public virtual void UnrealizeView (ViewHolder view);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ICollectionViewLayoutManager

public interface ICollectionViewLayoutManager {
	// properties
	public virtual ICollectionViewController CollectionView { get; set; }
	public virtual bool IsHorizontal { get; }
	// methods
	public virtual ElmSharp.Rect GetItemBound (int index);
	public virtual ElmSharp.Size GetScrollCanvasSize ();
	public virtual void ItemInserted (int index);
	public virtual void ItemMeasureInvalidated (int index);
	public virtual void ItemRemoved (int index);
	public virtual void ItemSourceUpdated ();
	public virtual void ItemUpdated (int index);
	public virtual void LayoutItems (ElmSharp.Rect bound, bool force);
	public virtual void Reset ();
	public virtual void SizeAllocated (ElmSharp.Size size);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.IEmptyAdaptor

public interface IEmptyAdaptor {
}

New Type: Xamarin.Forms.Platform.Tizen.Native.IEntry

public interface IEntry {
	// properties
	public virtual Xamarin.Forms.FontAttributes FontAttributes { get; set; }
	public virtual string FontFamily { get; set; }
	public virtual double FontSize { get; set; }
	public virtual string FontWeight { get; set; }
	public virtual TextAlignment HorizontalTextAlignment { get; set; }
	public virtual Keyboard Keyboard { get; set; }
	public virtual string Placeholder { get; set; }
	public virtual ElmSharp.Color PlaceholderColor { get; set; }
	public virtual ElmSharp.Color TextColor { get; set; }
	// events
	public event System.EventHandler<Xamarin.Forms.TextChangedEventArgs> TextChanged;
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ItemAdaptor

public abstract class ItemAdaptor : System.Collections.Specialized.INotifyCollectionChanged {
	// constructors
	protected ItemAdaptor (System.Collections.IEnumerable items);
	// properties
	public CollectionView CollectionView { get; set; }
	public int Count { get; }
	public object Item { get; }
	// events
	public event System.EventHandler<Xamarin.Forms.SelectedItemChangedEventArgs> ItemSelected;
	// methods
	public virtual ElmSharp.EvasObject CreateNativeView (ElmSharp.EvasObject parent);
	public virtual ElmSharp.EvasObject CreateNativeView (int index, ElmSharp.EvasObject parent);
	public int GetItemIndex (object item);
	public virtual object GetViewCategory (int index);
	public virtual ElmSharp.Size MeasureItem (int widthConstraint, int heightConstraint);
	public virtual ElmSharp.Size MeasureItem (int index, int widthConstraint, int heightConstraint);
	public virtual void RemoveNativeView (ElmSharp.EvasObject native);
	public void RequestItemSelected (object item);
	public virtual void SendItemSelected (int index);
	public virtual void SetBinding (ElmSharp.EvasObject view, int index);
	protected void SetItemsSource (System.Collections.IEnumerable items);
	public virtual void UnBinding (ElmSharp.EvasObject view);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ItemDefaultTemplateAdaptor

public class ItemDefaultTemplateAdaptor : Xamarin.Forms.Platform.Tizen.Native.ItemTemplateAdaptor, System.Collections.Specialized.INotifyCollectionChanged {
	// constructors
	public ItemDefaultTemplateAdaptor (Xamarin.Forms.ItemsView itemsView);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ItemTemplateAdaptor

public class ItemTemplateAdaptor : Xamarin.Forms.Platform.Tizen.Native.ItemAdaptor, System.Collections.Specialized.INotifyCollectionChanged {
	// constructors
	public ItemTemplateAdaptor (Xamarin.Forms.ItemsView itemsView);
	protected ItemTemplateAdaptor (Xamarin.Forms.ItemsView itemsView, System.Collections.IEnumerable items, Xamarin.Forms.DataTemplate template);
	// properties
	protected Xamarin.Forms.DataTemplate ItemTemplate { get; set; }
	// methods
	public override ElmSharp.EvasObject CreateNativeView (ElmSharp.EvasObject parent);
	public override ElmSharp.EvasObject CreateNativeView (int index, ElmSharp.EvasObject parent);
	protected Xamarin.Forms.View GetTemplatedView (ElmSharp.EvasObject evasObject);
	public override object GetViewCategory (int index);
	public override ElmSharp.Size MeasureItem (int widthConstraint, int heightConstraint);
	public override ElmSharp.Size MeasureItem (int index, int widthConstraint, int heightConstraint);
	public override void RemoveNativeView (ElmSharp.EvasObject native);
	public override void SetBinding (ElmSharp.EvasObject native, int index);
	public override void UnBinding (ElmSharp.EvasObject native);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.LinearLayoutManager

public class LinearLayoutManager : ICollectionViewLayoutManager {
	// constructors
	public LinearLayoutManager (bool isHorizontal);
	public LinearLayoutManager (bool isHorizontal, Xamarin.Forms.ItemSizingStrategy sizingStrategy);
	// properties
	public virtual ICollectionViewController CollectionView { get; set; }
	public virtual bool IsHorizontal { get; }
	// methods
	public virtual ElmSharp.Rect GetItemBound (int index);
	public virtual ElmSharp.Size GetScrollCanvasSize ();
	public virtual void ItemInserted (int inserted);
	public virtual void ItemMeasureInvalidated (int index);
	public virtual void ItemRemoved (int removed);
	public virtual void ItemSourceUpdated ();
	public virtual void ItemUpdated (int index);
	public virtual void LayoutItems (ElmSharp.Rect bound, bool force);
	public virtual void Reset ();
	public virtual void SizeAllocated (ElmSharp.Size size);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.TextHelper

public static class TextHelper {
	// methods
	public static ElmSharp.Size GetFormattedTextBlockSize (ElmSharp.EvasObject textable);
	public static ElmSharp.Size GetRawTextBlockSize (ElmSharp.EvasObject textable);
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ViewHolder

public class ViewHolder : Xamarin.Forms.Platform.Tizen.Native.Box {
	// constructors
	public ViewHolder (ElmSharp.EvasObject parent);
	// properties
	public ElmSharp.EvasObject Content { get; set; }
	public ElmSharp.Color FocusedColor { get; set; }
	public ElmSharp.Color SelectedColor { get; set; }
	public ViewHolderState State { get; set; }
	public object ViewCategory { get; set; }
	// events
	public event System.EventHandler RequestSelected;
	public event System.EventHandler Selected;
	// methods
	protected void Initialize (ElmSharp.EvasObject parent);
	protected virtual void OnClicked (object sender, System.EventArgs e);
	protected virtual void OnFocused (object sender, System.EventArgs e);
	protected virtual void OnLayout ();
	public void ResetState ();
	protected void SendSelected ();
	protected virtual void UpdateState ();
}

New Type: Xamarin.Forms.Platform.Tizen.Native.ViewHolderState

[Serializable]
public enum ViewHolderState {
	Normal = 0,
	Selected = 1,
}

Namespace Xamarin.Forms.Platform.Tizen.Native.Watch

Type Changed: Xamarin.Forms.Platform.Tizen.Native.Watch.WatchButton

Added interface:

Xamarin.Forms.Platform.Tizen.Native.IButton

Namespace Xamarin.Forms.Platform.UWP

Type Changed: Xamarin.Forms.Platform.UWP.ItemContentControl

Modified base type:

-Windows.UI.Xaml.Controls.UserControl
+Windows.UI.Xaml.Controls.ContentControl

Removed method:

protected override Windows.Foundation.Size ArrangeOverride (Windows.Foundation.Size finalSize);

Added method:

protected override void OnContentChanged (object oldContent, object newContent);

New Type: Xamarin.Forms.Platform.UWP.CheckBoxRenderer

public class CheckBoxRenderer : Xamarin.Forms.Platform.UWP.ViewRenderer`2[Xamarin.Forms.CheckBox,Xamarin.Forms.Platform.UWP.FormsCheckBox], System.IDisposable, Xamarin.Forms.IEffectControlProvider, Xamarin.Forms.IRegisterable, IVisualElementRenderer, IVisualNativeElementRenderer {
	// constructors
	public CheckBoxRenderer ();
	// properties
	protected override bool PreventGestureBubbling { get; set; }
	// methods
	protected virtual FormsCheckBox CreateNativeControl ();
	protected override void Dispose (bool disposing);
	protected override void OnElementChanged (Xamarin.Forms.Platform.UWP.ElementChangedEventArgs<Xamarin.Forms.CheckBox> e);
	protected override void OnElementPropertyChanged (object sender, System.ComponentModel.PropertyChangedEventArgs e);
}

New Type: Xamarin.Forms.Platform.UWP.FormsCheckBox

public class FormsCheckBox : Windows.UI.Xaml.Controls.CheckBox {
	// constructors
	public FormsCheckBox ();
	// fields
	public static Windows.UI.Xaml.DependencyProperty DefaultFillBrushProperty;
	public static Windows.UI.Xaml.DependencyProperty TintBrushProperty;
	// properties
	public Windows.UI.Xaml.Media.Brush DefaultFillBrush { get; set; }
	public Windows.UI.Xaml.Media.Brush TintBrush { get; set; }
}

Namespace Xamarin.Forms.Xaml

Type Changed: Xamarin.Forms.Xaml.XamlFilePathAttribute

Added property:

public string FilePath { get; }