Xamarin.Forms 4.3.0.851321-pre3 (4.3.0 Pre Release 3) Release Notes

Getting Started | What's New | Known Issues | Breaking Changes | API Changes | Blogs | Thank you | Feedback | Open Source

What's New in this Release

Notable Changes

Shell

This release introduces preview support for UWP thanks in large part to the contributions of Morten Nielsen. With the initial implementation in, smaller pull requests can now be made to complete missing functionality and stabilize it. To use Shell in your UWP application, you'll want to add a UWP project with Xamarin.Forms if you don't already have one, and then initialize the feature in your UWP App.xaml.cs:

global::Xamarin.Forms.Forms.SetFlags("Shell_UWP_Experimental");
Xamarin.Forms.Forms.Init(e);
  • "[Android] Check if Shell Flyout header is null before trying to use it" (#7333)
  • "[iOS] Fix usage conflict of Title and AttributedTitle on ButtonRenderer" (#6944)
  • "[Shell][Tizen] Add the MaterialShellRenderer on Tizen" (#6196)
  • "Add check to see if ShellContent is Visible one before firing OnAppearing" (#7460) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Add profiler instrumentation" (#7134)
  • "Fix direction of walking when calculating effective FlyoutBehavior " (#7459) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "ITextAlignmentElement VerticalTextAlignment (Entry, SearchBar, EntryCell)" (#6463)
  • "make all ShellTabBarAppearanceTracker methods virtual" (#7175)
  • Github #4504 - "[F100] Make Label display HTML from a string" (#4527)
  • Github #4855 - "[F100] Character Spacing (LetterSpacing/Kerning) in Label and Button" (#5167)
  • Github #4996 - "[Spec] CarouselView" (#5044)
  • Github #5593 - "Uwp Xamarin.Forms.Shell " (#6015) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #6802 - "[Bug] Shell SearchHandler - Cancel is visible by default?" (#6931)
  • Github #6964 - "Turn off bottom shadow and set bottom padding of Flyout Header" (#6970)

Visual

  • "[iOS] Fix usage conflict of Title and AttributedTitle on ButtonRenderer" (#6944)
  • "[Shell][Tizen] Add the MaterialShellRenderer on Tizen" (#6196)
  • "[Tizen] Fix slider thumb color issue" (#6785)
  • Github #2165 - "enable source link support" (#6886)
  • Github #4855 - "[F100] Character Spacing (LetterSpacing/Kerning) in Label and Button" (#5167)
  • Github #4996 - "[Spec] CarouselView" (#5044)

F100s

Features in Preview

CollectionView

  • "[Android, iOS] Fix CarouselView Issues" (#7366)
  • "[Android] Refactor the code for setting reverse layout in ItemsViewRenderer" (#7468) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "[CarouselView] Fixed issue updating PeekAreaInsets" (#7382)
  • "[iOS] Implement CollectionView ScrollTo with groups" (#7220)
  • "[iOS] Make button click easier to see when turning on CollectionView flag" (#7617) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • "[iOS] Remove class variable from CarouselViewLayout whose value is always true" (#7484) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "[UWP] Reduce allocations and fix memory leak in CollectionView" (#7608) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • "[UWP] RefreshView" (#7319) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Finish ScrollTo implementations for CollectionView on UWP" (#7509) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • "fix NRE on _itemsSource when using IEnumerable" (#7480) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Implement CarouselView on UWP" (#7503) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Implement EmptyView on UWP" (#7438) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Implement Move, Replace, and Reset for UWP CollectionView changes" (#7384) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • "Remove extra properties from CarouselView API" (#7456) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #4996 - "[Spec] CarouselView" (#5044)
  • Github #5354 - "[CollectionView] Updating the ItemsLayout type should refresh the layout" (#7613) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #5882 - "[Spec] RefreshView" (#7214)
  • Github #5998 - "[Enhancement] Create header and footer for CollectionView" (#7237)
  • Github #6620 - "[iOS] Crash when creating a CollectionView inside a CollectionView" (#7273)
  • Github #6889 - "[Bug] CollectionView on android (not test on iOS) lable binding show blank after do some scroll" (#7426) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #7035 - "[Bug][iOS] CarouselView last element is clipped" (#7158) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #7121 - "[Bug] Scrolling CollectionView(with footer) to the last item throws System.ArgumentOutOfRangeException" (#7199)
  • Github #7128 - "[iOS] Changing model property scrolls CollectionView back to top " (#7285) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #7194 - "[UWP CollectionView] Changing ItemsSource automatically selects first item" (#7267)
  • Github #7338 - "[Bug] CollectionView crash if source is empty in XF 4.2.0.709249" (#7354)
  • Github #7347 - "[Bug] Header/Footer do not update on Android CollectionView" (#7499) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #7357 - "[Android] Setting ItemSpacing creates spacing for the last item in CollectionView" (#7516) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #7395 - "[Bug] CollectionView: changing ItemTemplate does not work as expected" (#7628) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #7443 - "[Bug] The CarouselView does not snap by default" (#7444) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #7472 - "[iOS] Weird behavior when items are added with timer to empty CollectionView" (#7580) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #7519 - "[Android] Setting ItemSpacing for LinearItemsLayout does not work" (#7522) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #7525 - "[Bug] Carousel Position property doesn't change the position on page constructor - Android only" (#7587) (#7592) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))
  • Github #7621 - "[iOS] MeasureFirstItem is broken for CollectionView" (#7622) (added in 4.3.0.851321-pre3 (4.3.0 Pre Release 3))

Release History

  • Wednesday, October 2, 2019 - Xamarin.Forms 4.3.0.851321-pre3 (4.3.0 Pre Release 3)
  • Thursday, September 19, 2019 - Xamarin.Forms 4.3.0.819712-pre2 (4.3.0 Pre Release 2)
  • Wednesday, September 11, 2019 - Xamarin.Forms 4.3.0.778476-pre1 (4.3.0 Pre Release 1)

Wednesday, October 2, 2019 - Xamarin.Forms 4.3.0.851321-pre3 (4.3.0 Pre Release 3)

Issues Fixed

  • Github #5354 - "[CollectionView] Updating the ItemsLayout type should refresh the layout" (#7613)
  • Github #7035 - "[Bug][iOS] CarouselView last element is clipped" (#7158)
  • Github #7357 - "[Android] Setting ItemSpacing creates spacing for the last item in CollectionView" (#7516)
  • Github #7388 - "[Bug] IsRefreshing and RefreshCommand aren't working so well together" (#7398)
  • Github #7395 - "[Bug] CollectionView: changing ItemTemplate does not work as expected" (#7628)
  • Github #7472 - "[iOS] Weird behavior when items are added with timer to empty CollectionView" (#7580)
  • Github #7494 - "{TemplateBinding}s in Span no longer works" (#7506)
  • Github #7525 - "[Bug] Carousel Position property doesn't change the position on page constructor - Android only" (#7587) (#7592)
  • Github #7531 - "[Bug] Xaml-Only resources can't resolve xmlns with implicit assembly" (#7550)
  • Github #7548 - "Xamarin forms 4.2 : After up-gradation, Collection view cells Disappears and Appears when adding items " (#7580)
  • Github #7559 - "[Bug] AttachedProperty Generic generate a error during compile" (#7588)
  • Github #7621 - "[iOS] MeasureFirstItem is broken for CollectionView" (#7622)

Additional fixes included in this release

  • "[iOS] Make button click easier to see when turning on CollectionView flag" (#7617)
  • "[UWP] Reduce allocations and fix memory leak in CollectionView" (#7608)
  • "Finish ScrollTo implementations for CollectionView on UWP" (#7509)
  • "Only set elevation on Lollipop and up for FlatButtonRenderer" (#7662)
  • "UWP fixes for lower target sdk on VS 2017" (#7722)

Thursday, September 19, 2019 - Xamarin.Forms 4.3.0.819712-pre2 (4.3.0 Pre Release 2)

Issues Fixed

  • Github #6817 - "[Bug] DatePicker and TimePicker not working on xamarin.forms macOS" (#7183)
  • Github #6866 - "[Bug] PushModalAsync a 2nd time crashes Xamarin Forms for MacOS" (#7250)
  • Github #6889 - "[Bug] CollectionView on android (not test on iOS) lable binding show blank after do some scroll" (#7426)
  • Github #7128 - "[iOS] Changing model property scrolls CollectionView back to top " (#7285)
  • Github #7347 - "[Bug] Header/Footer do not update on Android CollectionView" (#7499)
  • Github #7443 - "[Bug] The CarouselView does not snap by default" (#7444)
  • Github #7453 - "[Bug] CollectionView Header not displayed without Footer" (#7499)
  • Github #7519 - "[Android] Setting ItemSpacing for LinearItemsLayout does not work" (#7522)
  • Github #7524 - "[Bug] Android CollectionView GridItemsLayout Span with Binding does not work anymore" (#7522)
  • Github #7545 - "[Bug] Writing error in File FormsCommandBarStyle.xaml" (#7546)
  • Github #7570 - "[Bug] VisualDiagnostics throws DuplicateKeyException" (#7571)

Additional fixes included in this release

  • "[Android] Refactor the code for setting reverse layout in ItemsViewRenderer" (#7468)
  • "[Build] Bump msbuild locator move to VS2019 " (#7415)
  • "[Core] Added intelisense to Keyboard property" (#7553)
  • "[Core] Removed MatchParent value from Property Editor" (#7551)
  • "[iOS] Remove class variable from CarouselViewLayout whose value is always true" (#7484)
  • "[Tests]Update to Xamarin.UITest 3.0 and NUnit 3.0 (#6332)" (#7031)
  • "[xamlc] new <XFXAMLCVALIDATEONLY> MSBuild property for Debug builds" (#7407)
  • "Add check to see if ShellContent is Visible one before firing OnAppearing" (#7460)
  • "Fix direction of walking when calculating effective FlyoutBehavior " (#7459)
  • "fix NRE on _itemsSource when using IEnumerable" (#7480)
  • "Implement CarouselView on UWP" (#7503)
  • "Implement EmptyView on UWP" (#7438)
  • "Implement Move, Replace, and Reset for UWP CollectionView changes" (#7384)
  • "Remove extra properties from CarouselView API" (#7456)

Wednesday, September 11, 2019 - Xamarin.Forms 4.3.0.778476-pre1 (4.3.0 Pre Release 1)

Issues Fixed

  • Github #1455 - "Context action are not changed when selected item changed on Android" (#6460)
  • Github #2509/Bugzilla 25557 - "Pin.Clicked does not work" (#6079)
  • Github #3475 - "[iOS] LayoutCompression Performance Issues" (#7201)
  • Github #4041 - "SupportActionMode Menu not updated in Android when using DataTemplateSelector " (#6460)
  • Github #4267 - "[iOS] NRE in ContextActionsCell" (#7306)
  • Github #4973 - "No view found for id 0xe (unknown) for fragment FragmentContainer" (#4974)
  • Github #5490 - "Map Pin Click only works on Android on XF and Maps 3.6" (#6079)
  • Github #5575 - "In macOS Mojave, navigation bar title text is not centered." (#6981)
  • Github #5610 - "iOS: Setting AnchorY incorrectly translates view" (#6951)
  • Github #6074 - "[Bug] macOS pressing the tab key moves to the 2nd entry instead of first" (#6982)
  • Github #6620 - "[iOS] Crash when creating a CollectionView inside a CollectionView" (#7273)
  • Github #6776 - "[Bug] System Crash when I swipe to Delete a ListView item and then Select another Item" (#7215)
  • Github #6790 - "[Bug] [WPF] Button padding doesn't work" (#6791)
  • Github #6802 - "[Bug] Shell SearchHandler - Cancel is visible by default?" (#6931)
  • Github #6847 - "Xamarin_iOS_UIKit_UIResponder_get_InputAssistantItem: unrecognized selector sent to instance 0x12df62320" (#6862)
  • Github #6945 - "[Bug] Wrong anchor behavior when setting HeightRequest and scaling (iOS only)" (#6951)
  • Github #6964 - "Turn off bottom shadow and set bottom padding of Flyout Header" (#6970)
  • Github #7049 - "Null reference exception on some Android devices - Xamarin.Forms.Platform.Android.PageRenderer.Xamarin.Forms.Platform.Android.IOrderedTraversalController.UpdateTraversalOrder" (#7050)
  • Github #7102 - "[Bug] CollectionView Header cause delay to adding items." (#7199)
  • Github #7121 - "[Bug] Scrolling CollectionView(with footer) to the last item throws System.ArgumentOutOfRangeException" (#7199)
  • Github #7156 - "[Bug] UWP SearchBar not visible if you set a WidthRequest property for another platform" (#7188)
  • Github #7187 - "[Bug] Typo in markup extension should throw XPE" (#7190)
  • Github #7194 - "[UWP CollectionView] Changing ItemsSource automatically selects first item" (#7267)
  • Github #7207 - "[Bug] debug single uitest causes unhandled exception" (#7228)
  • Github #7243 - "[Bug] [Android] ArgumentOutOfRangeException in CollectionView: Adapter miscalculates item position when using CV Header" (#7199)
  • Github #7338 - "[Bug] CollectionView crash if source is empty in XF 4.2.0.709249" (#7354)

Additional fixes included in this release

  • "[Android, iOS] Fix CarouselView Issues" (#7366)
  • "[Android] Check if Shell Flyout header is null before trying to use it" (#7333)
  • "[Android] Fix MasterDetailContainer fragment handling" (#6471)
  • "[Android] Just check if IsDesignModeEnabled true instead of checking Context type" (#7110)
  • "[Android] Update webview to use correct value for WebNavigationEvent" (#7089)
  • "[CarouselView] Fixed issue updating PeekAreaInsets" (#7382)
  • "[Core] Obsolete Device.OpenUri" (#6844)
  • "[GTK] Added missing NamedSizes for GTK" (#7130)
  • "[iOS] Added static bool and check for iOS 13" (#7041)
  • "[iOS] Fix Scrolled, don't use UITableView delegate" (#7328)
  • "[iOS] Fix usage conflict of Title and AttributedTitle on ButtonRenderer" (#6944)
  • "[iOS] Implement CollectionView ScrollTo with groups" (#7220)
  • "[Shell][Tizen] Add the MaterialShellRenderer on Tizen" (#6196)
  • "[Tizen] Adds Opt-in Init" (#7209)
  • "[Tizen] Fix slider thumb color issue" (#6785)
  • "[Tizen] Update ListViewRenderer for header and footer" (#6984)
  • "[X] Allow tracking the assignment of StaticResource" (#6868)
  • "[X] allow x:Type markup as x:DataType value" (#6843)
  • "Add ProfilePage.cs" (#7112)
  • "Add profiler instrumentation" (#7134)
  • "Cache Droid SDK ver" (#6983)
  • "cleanup: corrected spelling mistake" (#6794)
  • "ITextAlignmentElement VerticalTextAlignment (Entry, SearchBar, EntryCell)" (#6463)
  • "make all ShellTabBarAppearanceTracker methods virtual" (#7175)
  • "Replace IsDesignModeEnabled check with original Context Type Check" (#7143)
  • "Revert "[Tests]Update to Xamarin.UITest 3.0 and NUnit 3.0 (#6332)"" (#7021)
  • "Stop the madness; " (#7123)

Known Issues

  • Github #7056 - "[Bug, iOS] CollectionView blanks items on scroll"
  • Github #6988 - "[Bug] CollectionView sometimes doesn't render label "
  • Github #6507 - "[Bug] Navigating away from CollectionView and coming back leaves weird old items "
  • Github #6388 - "[CollectionView] Error when using ListItemsLayout in XAML"
  • Github #6369 - "[Bug] CollectionView - Label Bindings LayoutOptions rendering"
  • Github #5455 - "ItemSizingStrategy MeasureAllItems does not work for iOS"

Breaking Changes

  • "make all ShellTabBarAppearanceTracker methods virtual" (#7175)
  • Github #6964 - "Turn off bottom shadow and set bottom padding of Flyout Header" (#6970)
  • Github #7156 - "[Bug] UWP SearchBar not visible if you set a WidthRequest property for another platform" (#7188)

Namespace Xamarin.Forms

Type Changed: Xamarin.Forms.Forms

Removed method:

public static void Initialize (ActivationOptions activation);

Removed Type Xamarin.Forms.ActivationOptions

Namespace Xamarin.Forms.Platform.Android

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

Modified base type:

-Xamarin.Forms.Platform.Android.ItemsViewRenderer
+Xamarin.Forms.Platform.Android.ItemsViewRenderer`3[Xamarin.Forms.ItemsView,Xamarin.Forms.Platform.Android.ItemsViewAdapter`2[Xamarin.Forms.ItemsView,Xamarin.Forms.Platform.Android.IItemsViewSource],Xamarin.Forms.Platform.Android.IItemsViewSource]

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

Modified base type:

-Xamarin.Forms.Platform.Android.SelectableItemsViewRenderer
+Xamarin.Forms.Platform.Android.GroupableItemsViewRenderer`3[Xamarin.Forms.GroupableItemsView,Xamarin.Forms.Platform.Android.GroupableItemsViewAdapter`2[Xamarin.Forms.GroupableItemsView,Xamarin.Forms.Platform.Android.IGroupableItemsViewSource],Xamarin.Forms.Platform.Android.IGroupableItemsViewSource]

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

Removed constructor:

public SnapManager (Xamarin.Forms.ItemsView itemsView, Android.Support.V7.Widget.RecyclerView recyclerView);

Removed Type Xamarin.Forms.Platform.Android.ItemsViewAdapter

Removed Type Xamarin.Forms.Platform.Android.ItemsViewRenderer

Removed Type Xamarin.Forms.Platform.Android.SelectableItemsViewAdapter

Removed Type Xamarin.Forms.Platform.Android.SelectableItemsViewRenderer

Namespace Xamarin.Forms.Platform.Android.CollectionView

Removed Type Xamarin.Forms.Platform.Android.CollectionView.RecyclerViewScrollListener

Namespace Xamarin.Forms

Type Changed: Xamarin.Forms.ItemsView

Removed fields:

public static BindableProperty FooterProperty;
public static BindableProperty FooterTemplateProperty;
public static BindableProperty HeaderProperty;
public static BindableProperty HeaderTemplateProperty;
public static BindableProperty ItemsLayoutProperty;

Removed properties:

public object Footer { get; set; }
public DataTemplate FooterTemplate { get; set; }
public object Header { get; set; }
public DataTemplate HeaderTemplate { get; set; }
public IItemsLayout ItemsLayout { get; set; }

Type Changed: Xamarin.Forms.SelectableItemsView

Modified base type:

-Xamarin.Forms.ItemsView
+Xamarin.Forms.StructuredItemsView

Removed Type Xamarin.Forms.ActivationFlags

Removed Type Xamarin.Forms.ListItemsLayout

Namespace Xamarin.Forms.Internals

Type Changed: Xamarin.Forms.Internals.Registrar

Removed method:

public static void RegisterAll (System.Type[] attrTypes, Xamarin.Forms.ActivationFlags flags);

Namespace Xamarin.Forms.Platform.iOS

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

Removed method:

protected IVisualElementRenderer CreateRenderer (Xamarin.Forms.View view);

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

Removed method:

protected virtual ItemsViewLayout SelectLayout (Xamarin.Forms.IItemsLayout layoutSpecification, Xamarin.Forms.ItemSizingStrategy itemSizingStrategy);

Modified methods:

-protected abstract ItemsViewController CreateController (Xamarin.Forms.ItemsView newElement, ItemsViewLayout layout)
+protected ItemsViewController CreateController (Xamarin.Forms.ItemsView newElement, ItemsViewLayout layout)

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

Modified base type:

-Xamarin.Forms.Platform.iOS.ItemsViewController
+Xamarin.Forms.Platform.iOS.StructuredItemsViewController

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

Modified base type:

-Xamarin.Forms.Platform.iOS.ItemsViewRenderer
+Xamarin.Forms.Platform.iOS.StructuredItemsViewRenderer

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

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
public virtual void ResetAppearance (UIKit.UITabBarController controller);
public virtual void SetAppearance (UIKit.UITabBarController controller, Xamarin.Forms.ShellAppearance appearance);
public virtual void UpdateLayout (UIKit.UITabBarController controller);

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

Removed property:

public IVisualElementRenderer VisualElementRenderer { get; }

Removed methods:

public void PrepareForRemoval ();
public override void PrepareForReuse ();
public void SetRenderer (IVisualElementRenderer renderer);

Removed Type Xamarin.Forms.Platform.iOS.HorizontalTemplatedSupplementalView

Removed Type Xamarin.Forms.Platform.iOS.VerticalTemplatedSupplementalView

Namespace Xamarin.Forms.Platform.MacOS

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

Removed method:

public override void KeyUp (AppKit.NSEvent theEvent);

Namespace Xamarin.Forms.Platform.Tizen

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

Removed constructor:

public Item (string title, string icon);

Modified properties:

-public string Icon { get; set; }
+public Xamarin.Forms.ImageSource Icon { get; set; }

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

Modified base type:

-Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.ItemsView,Xamarin.Forms.Platform.Tizen.Native.CollectionView]
+Xamarin.Forms.Platform.Tizen.ViewRenderer`2[Xamarin.Forms.StructuredItemsView,Xamarin.Forms.Platform.Tizen.Native.CollectionView]

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

Modified properties:

-public NavigationView NavigationView { get; set; }
+public ElmSharp.EvasObject NavigationView { get; set; }

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

Removed property:

public System.Collections.Generic.IList<Group> Menu { get; set; }

Removed event:

public event System.EventHandler<ElmSharp.GenListItemEventArgs> MenuItemSelected;

Namespace Xamarin.Forms.Platform.UWP

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

Modified base type:

-Xamarin.Forms.Platform.UWP.ViewRenderer`2[Xamarin.Forms.CollectionView,Windows.UI.Xaml.Controls.ListViewBase]
+Xamarin.Forms.Platform.UWP.ViewRenderer`2[Xamarin.Forms.ItemsView,Windows.UI.Xaml.Controls.ListViewBase]

Modified constructors:

-public ItemsViewRenderer ()
+protected ItemsViewRenderer ()

Removed methods:

protected virtual Windows.UI.Xaml.Controls.ListViewBase SelectLayout (Xamarin.Forms.IItemsLayout layoutSpecification);
protected virtual void SetUpNewElement (Xamarin.Forms.ItemsView newElement);

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

Modified base type:

-Xamarin.Forms.Platform.UWP.ItemsViewRenderer
+Xamarin.Forms.Platform.UWP.StructuredItemsViewRenderer

Deprecations

  • "[Core] Obsolete Device.OpenUri" (#6844)

API Changes

See all API Changes here.

  • "Entry ClearButtonMode" (#5277)
  • "ITextAlignmentElement VerticalTextAlignment (Entry, SearchBar, EntryCell)" (#6463)
  • "Remove extra properties from CarouselView API" (#7456) (added in 4.3.0.819712-pre2 (4.3.0 Pre Release 2))
  • Github #1455 - "Context action are not changed when selected item changed on Android" (#6460)
  • Github #1673 - "[Enhancement] Map with shapes from pin" (#6136)
  • Github #2509/Bugzilla 25557 - "Pin.Clicked does not work" (#6079)
  • Github #2680 - "[Enhancement] Add VerticalScrollMode/HorizontalScrollMode ScrollView" (#3113)
  • Github #4323 - "[Enhacement] Add Scrolled event to ListView" (#7157)
  • Github #4504 - "[F100] Make Label display HTML from a string" (#4527)
  • Github #4855 - "[F100] Character Spacing (LetterSpacing/Kerning) in Label and Button" (#5167)
  • Github #6713 - "[Enhancement] Display prompts" (#6714)

Blogs

Xamarin Blogs

Thank you

Thank you to our community for helping to make Xamarin.Forms even better!

This release, we received amazing contributions from these individuals. Give them a big round of applause!

Author Commit PR
adrianknight89 (@adrianknight89) [Core] Add ability to show modal prompts (#6714) #6714
adrianknight89 (@adrianknight89) minor fixes (#7178) #
adrianknight89 (@adrianknight89) [iOS] Remove class variable from CarouselViewLayout whose value is always true (#7484) #7484
adrianknight89 (@adrianknight89) [Android] Refactor the code for setting reverse layout in ItemsViewRenderer (#7468) #7468
adrianknight89 (@adrianknight89) [Android] Fix ItemSpacing for last item in CollectionView (#7516) #7516
adrianknight89 (@adrianknight89) [iOS] Make button click easier to see when turning on CollectionView flag (#7617) #7617
adrianknight89 (@adrianknight89) [iOS] Fix MeasureFirstItem for CollectionView (#7622) #7622
adrianknight89 (@adrianknight89) [Android/iOS] Handle dynamically switching between item layouts in CollectionView (#7613) fixes #5354 #7613
Alexey Maltsev (@AxelUser) Implemented scrolling disabling for ScrollView via ScrollOrientation.Neither (#3113) #3113
Andrei (@AndreiMisiukevich) fixes #5575 (#6981) #6981
Andrei (@AndreiMisiukevich) fixes #6074 (#6982) #6982
Andrei (@AndreiMisiukevich) [macOS] PushModalAsync a 2nd time causes a crash (#7250) fixes #6866 #7250
Andrei Nitescu (@andreinitescu) Label padding (#6299) #6299
Andrei Nitescu (@andreinitescu) ITextAlignmentElement VerticalTextAlignment (Entry, SearchBar, EntryCell) (#6463) #6463
Andrei Nitescu (@andreinitescu) Entry ClearButtonMode (#5277) #5277
Brayan Khosravian (@BrayanKhosravian) - Issue 7207 - if current culture of the current thread is not set to the invariant culture then initializing the app causes a "NUnit.Framework.InconclusiveException" with the exception- message "App did not start for some reason. System.Argument.Exception: 1 is not supported code page. Parameter name: codepage." (#7228) #7228
Brian Runck (@brunck) Update CONTRIBUTING.md (#7153) #7153
Brian Runck (@brunck) Update README.md (#7196) #7196
Edwin Wachs (@wachs) [UWP] Multi-window (#2432) #2432
Geoffrey Huntley (@ghuntley) cleanup: corrected spelling mistake (#6794) #6794
Geoffrey Huntley (@ghuntley) cleanup: moved closing brace to new line (#6793) #6793
Giampaolo Gabba (@GiampaoloGabba) [iOS] Fix LayoutCompression Performance Issues #3475 (#7201) #7201
Guido Neele (@GuidoNeele) [Android] Context actions menu is now updated when changing cells. (#6460) fixes #1455 fixes #4041 #6460
Happypig375 (@Happypig375) Adds a null check for Xamarin.Forms.Platform.Android.PageRenderer.Xamarin.Forms.Platform.Android.IOrderedTraversalController.UpdateTraversalOrder (#7050) #7050
Joe Manke (@jcmanke) Add separate MarkerClick and InfoWindowClick events for Pins (#6079) #6079
Joe Manke (@jcmanke) [Maps] Add polylines and polygons (#6136) #6136
joepgrooten (@joepgrooten) Fix default cancel button visibility on iOS SearchHandler (#6931) #6931
Kangho Hur (@rookiejava) [Tizen] Adds Opt-in Init (#7209) #7209
Kevin Petit (@kvpt) [Android] Fix MasterDetailContainer fragment handling (#6471) #6471
Kevin Petit (@kvpt) [Android] Correctly dispose TabbedPageRenderer (#4974) #4974
Konrad Müller (@krdmllr) [macOS] Only use default font size for Time/DatePicker to avoid clipping issues (#7183) #7183
ksemenenko (@KSemenenko) [Enhancement] Implements CharacterSpacing (#5167) #5167
ksemenenko (@KSemenenko) ListView.Scrolled (#7157) #7157
Mahmoud Ali (@akamud) Warn on Styles validation instead of throwing exception (#7495) #7495
Morten Nielsen (@dotMorten) Adds UWP support to Shell (#6015) #6015
Peter Moore (@legistek) RelativeSource Binding (#4375) #4375
Ravinder Jangra (@ravinderjangra) [Android] Update webview to use correct value for WebNavigationEvent (#7089) #7089
shmin (@shyunMin) [Tizen] Fix slider thumb color issue (#6785) #6785
sung-su.kim (@sung-su) [Tizen] Update ListViewRenderer for header and footer (#6984) #6984
yourina (@yourina) [Shell][Tizen] Add the MaterialShellRenderer on Tizen (#6196) #6196

Feedback welcome

Your feedback is important to us. If there are any problems with this release, check the Xamarin.Forms Forums and GitHub for existing issues. Report new issues and suggestions on GitHub.

Open Source

Xamarin.Forms 4.3.0 is based on the open-source Xamarin.Forms repository: