{"id":48402,"date":"2021-01-07T09:45:03","date_gmt":"2021-01-07T17:45:03","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/xamarin\/?p=48402"},"modified":"2021-01-13T09:23:01","modified_gmt":"2021-01-13T17:23:01","slug":"xamarin-forms-5-0-is-here","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/xamarin\/xamarin-forms-5-0-is-here\/","title":{"rendered":"Xamarin.Forms 5.0 is Here!"},"content":{"rendered":"<p>Today we are publishing the latest stable release of Xamarin.Forms, version 5.0. This major release delivers hundreds of quality improvements and brings to stable release new features including App Themes, Brushes, CarouselView, RadioButton, Shapes and Paths, and SwipeView.<\/p>\n<p>The Xamarin team wishes to extend a huge thank you to the many <a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/release-notes\/5.0\/5.0.0-pre6#contributors\">contributors<\/a> and <a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/release-notes\/5.0\/5.0.0-pre6#community-reviewers\">reviewers<\/a> that helped make this release. You are amazing!<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/5-contribs-1.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/5-contribs-1.png\" alt=\"Image 5 contribs 1\" width=\"701\" height=\"601\" class=\"aligncenter size-full wp-image-48409\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/5-contribs-1.png 701w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/5-contribs-1-300x257.png 300w\" sizes=\"(max-width: 701px) 100vw, 701px\" \/><\/a><\/p>\n<p>In past blog posts we have covered features as they previewed, and your feedback has guided us to this stable mark. To explore each new control and experience, check the resources linked below.<\/p>\n<h2>Upgrading to 5.0<\/h2>\n<p>We have upgraded all our samples, and many of our own projects from versions of Xamarin.Forms going back as far as 3.5 with smooth sailing. There are some things that\u2019ll help you make quick work of the migration. Here\u2019s a quick checklist for success:<\/p>\n<ol>\n<li>Make sure you\u2019re using Visual Studio 2019. This is the minimum version required.<\/li>\n<li>UIWebView has been removed to address Apple\u2019s updated guidance. Unless you have intentionally opted-in to UIWebView then you\u2019re already using the newer WKWebView and won\u2019t need to do anything additional.<\/li>\n<li>MediaElement, Expander, and C# UI markup extensions have been moved to the Xamarin Community Toolkit library. Install this NuGet and update your code accordingly. You\u2019ll probably want this library anyway as it has a lot of valuable solutions every app needs.<\/li>\n<li>DataPages and Theme packages should be removed from your solutions. These experimental packages are no longer being released.<\/li>\n<li>(Optional) MasterDetailPage and related types have been renamed to FlyoutPage and similar. This is a deprecation, and your apps will continue to work for now without making this change, however we recommend refactoring before we get to .NET MAUI.<\/li>\n<\/ol>\n<h2>Resources, Documentation, Samples, and Videos<\/h2>\n<p>Check the <a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/release-notes\/5.0\/5.0.0\">full release notes<\/a> for complete details about what\u2019s in the release. We also publish a full <a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/release-notes\/5.0\/5.0.0-api\">API change document<\/a> that is useful.<\/p>\n<p>New documentation is published for the new features, and much more which you can track on the <a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/whats-new\/\">What\u2019s New<\/a> page.<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/user-interface\/brushes?WT.mc_id=docs-blog-daortin\">Brushes<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/xamarin\/xamarin-forms\/user-interface\/carouselview?WT.mc_id=docs-blog-daortin\">CarouselView<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/xamarin\/xamarin-forms\/app-fundamentals\/gestures\/drag-and-drop?WT.mc_id=docs-blog-daortin\">Drag-and-drop<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/xamarin\/xamarin-forms\/user-interface\/indicatorview?WT.mc_id=docs-blog-daortin\">IndicatorView<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/xamarin\/Xamarin.Forms\/pull\/11628?WT.mc_id=docs-blog-daortin\">RadioButton<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/xamarin\/xamarin-forms\/user-interface\/shapes?WT.mc_id=docs-blog-daortin\">Shapes and Paths<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/xamarin\/xamarin-forms\/user-interface\/swipeview?WT.mc_id=docs-blog-daortin\">SwipeView<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/xamarin\/xamarin-forms\/user-interface\/webview?tabs=windows#uiwebview-deprecation-and-app-store-rejection-itms-90809\">UIWebView<\/a><\/li>\n<\/ul>\n<p>The official <a href=\"https:\/\/docs.microsoft.com\/en-us\/samples\/browse\/?products=xamarin&amp;term=Xamarin.Forms&amp;terms=Xamarin.Forms\">Xamarin.Forms samples<\/a> are now updated and ready for you to explore Xamarin.Forms 5.0.<\/p>\n<p>These experiments (use at your own risk) from our team may also be interesting to you as you check out the release:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/davidortinau\/Xappy\">Xappy<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/davidortinau\/LosGatos\">Los Gatos<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/davidortinau\/draganddropsample\">Drag and Drop<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/davidortinau\/FlyMe\">Fly Me<\/a><\/li>\n<\/ul>\n<p>Blogs previewing many of these features may be found here:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.codemag.com\/Article\/2010082\/Xamarin.Forms-5-Dual-Screens-Dark-Modes-Designing-with-Shapes-and-More\">CODE Magazine: Xamarin.Forms 5<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/xamarin-forms-5-preview\/\">Xamarin.Forms 5 Preview<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/xamarin-forms-shell-quick-tip-modal-navigation\/\">Xamarin.Forms Shell Quick Tip: Modal Navigation<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/xamarinforms-4-8-gradients-brushes\/\">Gradient Brushes<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/xamarin-forms-shapes-and-paths\/\">Shapes and Paths<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/app-themes-xamarin-forms\/\">App Themes (Dark Mode)<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/xamarin\/c-sharp-markup-for-xamarin-forms\/\">C# UI Markup<\/a><\/li>\n<\/ul>\n<h3>Videos<\/h3>\n<p><a href=\"https:\/\/aka.ms\/60s\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2-1024x461.png\" alt=\"Image 60s Titles 2\" width=\"640\" height=\"288\" class=\"aligncenter size-large wp-image-48407\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2-1024x461.png 1024w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2-300x135.png 300w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2-768x346.png 768w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2-1536x692.png 1536w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2021\/01\/60s-Titles-2.png 1601w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>Check out these short tutorials covering these new features <a href=\"https:\/\/aka.ms\/60s\">on YouTube<\/a>.<\/p>\n<p>Additionally we have introduced many of the Xamarin.Forms 5.0 content on The Xamarin Show and at .NET Conf 2020.<\/p>\n<p><iframe width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/M7UVz82dE90\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p><iframe width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/ttF80UnrJAg\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h2>Get Started<\/h2>\n<p>Update your projects to 5.0 via the NuGet Package Manager, clean, restart VS, and rebuild. Let us know how it goes! If you have any issues, please <a href=\"https:\/\/github.com\/xamarin\/Xamarin.Forms\/issues\/new\/choose\">file a report for us on GitHub<\/a>.<\/p>\n<p>Xamarin.Forms 5.0 will continue to receive service releases through November 2022. .NET MAUI will be the next major feature release with previews of .NET 6 shipping early this year. Xamarin.Forms 5.0 apps will migrate to .NET 6 and upgrade directly to .NET MAUI. We look forward to continuing this evolution with you in 2021!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Xamarin.Forms 5 is here, delivering hundreds of quality improvements and brings to stable release new features including App Themes, Brushes, CarouselView, RadioButton, Shapes and Paths, and SwipeView.<\/p>\n","protected":false},"author":553,"featured_media":48438,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5216,2,367],"tags":[7282,16,9168],"class_list":["post-48402","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-announcements","category-developers","category-xamarin-forms","tag-net","tag-xamarin-forms","tag-xamarin-forms-5"],"acf":[],"blog_post_summary":"<p>Xamarin.Forms 5 is here, delivering hundreds of quality improvements and brings to stable release new features including App Themes, Brushes, CarouselView, RadioButton, Shapes and Paths, and SwipeView.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/48402","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/users\/553"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/comments?post=48402"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/48402\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media\/48438"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media?parent=48402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/categories?post=48402"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/tags?post=48402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}