10.0.0-preview.4.25263.4
Preview
Contributors
.NET MAUI 10.0.0-preview.4 Release Notes
This release focuses on quality and stability across all platforms, with significant enhancements to input controls and collection-based views.
Getting started
Install from command line:
dotnet workload install maui --version 10.0.100-preview.4.25263.1
Known issues
When building from Visual Studio you might need to force the RoslynCompilerType to be used by adding this property to your csproj. After making this change make sure to restart Visual studio.
<RoslynCompilerType>FrameworkPackage</RoslynCompilerType>
What’s Changed
.NET MAUI Preview 4 introduces improvements across all platforms. Key highlights include nullable support for DatePicker and TimePicker, modernized MediaPicker functionality for iOS and Android, fixing WebView behavior, enhancing shadow rendering on clipped views, and improving various input controls. Several platform-specific bugs have been addressed to enhance the overall stability and reliability of the framework.
BindableLayout
- ❤️ [All] Improved reliability by properly disconnecting handlers by [Alberto Aldegheri](https://github.com/albyrock87) in #27450
CarouselView
- 🛠️ [iOS] Fixed changing carousel view orientation with disabled loop by [Jakub Florkowski](https://github.com/kubaflo) in #28545
- 🛠️ [All] Fixed
ItemsUpdatingScrollModeso the view keeps position when the collection changes by [@SuthiYuvaraj](https://github.com/SuthiYuvaraj) in #26608
CollectionView
- 🛠️ [iOS] Fixed footer sizing when the source is empty by [Jakub Florkowski](https://github.com/kubaflo) in #28610
- 🛠️ [Windows] Fixed crash when
EmptyViewis reused after navigation by [@KarthikRajaKalaimani](https://github.com/KarthikRajaKalaimani) in #28367 - 🛠️ [iOS] Resolved proper rendering of dynamic header/footer updates by [@prakashKannanSf3972](https://github.com/prakashKannanSf3972) in #28641
- 🛠️ [iOS] Fixed
TargetInvocationExceptionwhen selecting header/footer after changingItemsLayoutby [@Ahamed-Ali](https://github.com/Ahamed-Ali) in #28890
DatePicker
- ✅ [All] Added nullable support for
Date,MinimumDate, andMaximumDateproperties by [Gerald Versluis](https://github.com/jfversluis) in #27921 - 🛠️ [Windows] Fixed text and icon color issues when hovering over the DatePicker by [@Ahamed-Ali](https://github.com/Ahamed-Ali) in #27147
Entry
- 🛠️ [iOS] Fixed
CursorPositionproperty not being applied correctly by [@praveenkumarkarunanithi](https://github.com/praveenkumarkarunanithi) in #27220
FlyoutPage
- 🛠️ [Windows] Fixed
IsPresentedproperty not updating correctly by [@devanathan-vaithiyanathan](https://github.com/devanathan-vaithiyanathan) in #28471 - 🛠️ [iOS] Fixed FlyoutPage not responding to changes in the
FlyoutLayoutBehaviorproperty by [@devanathan-vaithiyanathan](https://github.com/devanathan-vaithiyanathan) in #28884 - 🛠️ [Windows] Fixed flyout content width not being set correctly after updating to WinUI SDK 1.7 by [@Tamilarasan-Paranthaman](https://github.com/Tamilarasan-Paranthaman) in #28996
Graphics
- 🛠️ [Android] Fixed
ScalingCanvas.SetBlurmethod not working correctly by [@NirmalKumarYuvaraj](https://github.com/NirmalKumarYuvaraj) in #28911
ImageButton
- 🛠️ [Android] Fixed padding issues that caused double padding (ContentPadding + Padding) by [Javier Suárez](https://github.com/jsuarezruiz) in #25223
MediaPicker
- ✅ [iOS] Modernized MediaPicker implementation with improved APIs by [Gerald Versluis](https://github.com/jfversluis) in #28920
- ✅ [Android] Updated to use new Photo Picker API for modern Android experience by [@phunkeler](https://github.com/phunkeler) in #24027
- 🛠️ [iOS] Fixed
File.ContentTypefrom MediaPicker not being in valid MIME format by [@SyedAbdulAzeemSF4852](https://github.com/SyedAbdulAzeemSF4852) in #28842
Navigation
- 🛠️ [iOS] Fixed back-navigation with swipe gesture navigating back twice by [Jakub Florkowski](https://github.com/kubaflo) in #28485
- 🛠️ [Windows] Fixed BackButton visibility issue when switching tabs without NavigationPage by [@Vignesh-SF3580](https://github.com/Vignesh-SF3580) in #28371
Picker
- 🛠️ [Windows] Fixed Visual State issue with Picker TextColor after navigation by [@prakashKannanSf3972](https://github.com/prakashKannanSf3972) in #28853
Shadow
- 🛠️ [Windows] Fixed shadow not updating when clipping a view with a shadow by [@NirmalKumarYuvaraj](https://github.com/NirmalKumarYuvaraj) in #27873
- ❤️ [Android/iOS] Improved shadow rendering on Android and fixed shadow clipping on iOS by [Alberto Aldegheri](https://github.com/albyrock87) in #26789
SwipeView
- 🛠️ [All] Fixed
SwipeItemViewnot renderingFontImageSourceon first opening by [Jakub Florkowski](https://github.com/kubaflo) in #25397
TabbedPage
- 🛠️ [Android] Fixed incorrect text color applied to selected tab by [@Ahamed-Ali](https://github.com/Ahamed-Ali) in #28844
- 🛠️ [iOS] Fixed TabBar disappearing when navigating back from page with hidden TabBar in iOS 18 by [@SuthiYuvaraj](https://github.com/SuthiYuvaraj) in #27582
TabBar
- 🛠️ [iOS] [Android] Fixed FontImageSource color not being applied properly to the Tab Icon by [@Tamilarasan-Paranthaman](https://github.com/Tamilarasan-Paranthaman) in #26757
TimePicker
- ✅ [All] Added nullable support for
Timeproperty by [Gerald Versluis](https://github.com/jfversluis) in #27930
WebView
- 🛠️ [Windows] Fixed
Navigatedevent being called even after cancelling the Navigation by [@sankaranarayananr](https://github.com/sankaranarayananr) in #28340 - 🛠️ [iOS] Fixed transparent
BackgroundColornot being applied correctly by [@Tamilarasan-Paranthaman](https://github.com/Tamilarasan-Paranthaman) in #28804
Additional Updates
Dependency Updates
- ℹ️ [Android] Fixed
Androidnamespace conflicts by [@jonpryor](https://github.com/jonpryor) in #28771 - ✅ [Windows] Upgraded to Windows App SDK 1.7 by [@MartyIX](https://github.com/MartyIX) in #28499
- ❤️ [CI] Updated Arcade to latest version for improved build reliability by [Rui Marinho](https://github.com/rmarinho) in #28701
- ❤️ [CI] Updated Arcade for .NET 10 by [Rui Marinho](https://github.com/rmarinho) in #28980
- ❤️ [CI] Updated Arcade to latest version by [Rui Marinho](https://github.com/rmarinho) in #29000
- 🛠️ [CI] Fixed publishing of files with Arcade by [Rui Marinho](https://github.com/rmarinho) in #28707
- 🛠️ [CI] Fixed internal main build process by [Rui Marinho](https://github.com/rmarinho) in #28709
- ❤️ [CI] Improved CI builds with fixes for dnceng builds by [Rui Marinho](https://github.com/rmarinho) in #28671
- ❤️ [CI] Updated stable versions by [Rui Marinho](https://github.com/rmarinho) in #29124
- ❤️ [CI] Updated AspNet.Security.OAuth.Apple by [Rui Marinho](https://github.com/rmarinho) in #29250
- ❤️ [.NET 10] Updated SDK and runtime for preview4 channel by [Rui Marinho](https://github.com/rmarinho) in #29246
- ❤️ [.NET 10] Updated dependencies from dotnet/android in multiple PRs
- ❤️ [.NET 10] Updated dependencies from dotnet/sdk in multiple PRs
- ❤️ [.NET 10] Updated dependencies from dotnet/macios in multiple PRs
- ❤️ Updated dependencies from dotnet/xharness in multiple PRs
- ❤️ Updated global.json by [Rui Marinho](https://github.com/rmarinho) in #29102
- 🛠️ [All] Fixed
System.MissingMethodExceptioninPropertyPropagationExtensionsby [Alberto Aldegheri](https://github.com/albyrock87) in #28456 - ❤️ [iOS] Made
IShapeinMauiCALayeraWeakReferenceto prevent memory leaks by [Alberto Aldegheri](https://github.com/albyrock87) in #28412 - ❤️ [All] Updated XHarness CLI to version 10.0.0-prerelease.25214.3
Framework Enhancements
- ✅ [XAML] Added
IRootObjectProviderto support advanced XAML scenarios by [Stéphane Delcroix](https://github.com/StephaneDelcroix) in #28310
Testing Infrastructure
- ❤️ [Testing] Feature Matrix UITest Cases for CollectionView Header/Footer Feature by [@LogishaSelvarajSF4525](https://github.com/LogishaSelvarajSF4525) in #28938
- ❤️ [Testing] Feature Matrix UITest Cases for CollectionView Scrolling Feature by [@NafeelaNazhir](https://github.com/NafeelaNazhir) in #29230
- ❤️ [Testing] Implemented InteractivePopGesture by [Jakub Florkowski](https://github.com/kubaflo) in #28577
- ❤️ [Testing] Migration of Compatibility.Core platform-specific unit tests into device tests (Part 3) by [@anandhan-rajagopal](https://github.com/anandhan-rajagopal) in #28103
- ❤️ [Testing] Migration of Compatibility.Core platform-specific unit tests into device tests (Part 5) by [@TamilarasanSF4853](https://github.com/TamilarasanSF4853) in #28193
- ❤️ [Testing] Migration of Compatibility.Core platform-specific unit tests into device tests (Part 7) by [@nivetha-nagalingam](https://github.com/nivetha-nagalingam) in #28409
- ❤️ [Testing] Migration of Compatibility.Core platform-specific unit tests into device tests (Part 8) by [@TamilarasanSF4853](https://github.com/TamilarasanSF4853) in #28496
- ❤️ [Testing] Enabled more UI tests by removing platform-specific conditions (Part 15) by [@LogishaSelvarajSF4525](https://github.com/LogishaSelvarajSF4525) in #27965
- ❤️ [Testing] Enabled more UI tests by removing platform-specific conditions (Part 19) by [@HarishKumarSF4517](https://github.com/HarishKumarSF4517) in #28060
- ❤️ [Testing] Enabled failed UITests for Switch control due to new OffColor API by [@HarishKumarSF4517](https://github.com/HarishKumarSF4517) in #28495
- ❤️ [Testing] Updated UIAutomator2 driver version by [Rui Marinho](https://github.com/rmarinho) in #29029
- 🛠️ [Testing] Fixed flaky UI tests for CollectionView and CarouselView by [@anandhan-rajagopal](https://github.com/anandhan-rajagopal) in #28626
- 🛠️ [Testing] Fixed flaky UI tests in CI that occasionally fail (Part 6) by [@anandhan-rajagopal](https://github.com/anandhan-rajagopal) in #28747
- 🛠️ [Testing] Fixed flaky UI tests in CI that occasionally fail (Part 7) by [@HarishKumarSF4517](https://github.com/HarishKumarSF4517) in #28764
- 🛠️ [Testing] Fixed flaky UI tests in CI that occasionally fail (Part 8) by [@HarishKumarSF4517](https://github.com/HarishKumarSF4517) in #28828
- 🛠️ [Testing] Fixed flaky tests which randomly fails on CI (Part 10) by [@anandhan-rajagopal](https://github.com/anandhan-rajagopal) in #29026
- 🛠️ [Testing] Fixed some flaky UI tests that fail on Android by [@bhavanesh2001](https://github.com/bhavanesh2001) in #28956
- 🛠️ [Testing] Fixed test for
ItemImageSourceShouldBeVisibleby [Javier Suárez](https://github.com/jsuarezruiz) in #28665 - 🛠️ [Testing] Fixed test case failure for RadioButton update value insert border by [@praveenkumarkarunanithi](https://github.com/praveenkumarkarunanithi) in #28584
- 🛠️ [Testing] Added retries and avoided Appium Doctor on Linux by [Javier Suárez](https://github.com/jsuarezruiz) in #28845
- 🛠️ [Testing] Fixed Android emulator boot issues on Linux by [Javier Suárez](https://github.com/jsuarezruiz) in #28882
- 🛠️ [Testing] Fixed Android emulator cake boot issues on Linux by [Javier Suárez](https://github.com/jsuarezruiz) in #29123
- ✅ [Testing] Implemented methods to manage alerts from UITests on Windows by [Javier Suárez](https://github.com/jsuarezruiz) in #28177
New Contributors
- @phunkeler made their first contribution in https://github.com/dotnet/maui/pull/24027
- @durandt made their first contribution in https://github.com/dotnet/maui/pull/29242
All Contributors
Thank you to all our contributors:
[@Ahamed-Ali](https://github.com/Ahamed-Ali), [@aheubusch](https://github.com/aheubusch), [Alberto Aldegheri](https://github.com/albyrock87), [@anandhan-rajagopal](https://github.com/anandhan-rajagopal), [@bhavanesh2001](https://github.com/bhavanesh2001), [@BretJohnson](https://github.com/BretJohnson), [@devanathan-vaithiyanathan](https://github.com/devanathan-vaithiyanathan), [@Dhivya-SF4094](https://github.com/Dhivya-SF4094), [@durandt](https://github.com/durandt), [@HarishKumarSF4517](https://github.com/HarishKumarSF4517), [@HarishwaranVijayakumar](https://github.com/HarishwaranVijayakumar), [Gerald Versluis](https://github.com/jfversluis), [Jonathan Peppers](https://github.com/jonathanpeppers), [Javier Suárez](https://github.com/jsuarezruiz), [@KarthikRajaKalaimani](https://github.com/KarthikRajaKalaimani), [Jakub Florkowski](https://github.com/kubaflo), [@LogishaSelvarajSF4525](https://github.com/LogishaSelvarajSF4525), [@MarcelStommel](https://github.com/MarcelStommel), [@MartyIX](https://github.com/MartyIX), [@NafeelaNazhir](https://github.com/NafeelaNazhir), [@NirmalKumarYuvaraj](https://github.com/NirmalKumarYuvaraj), [@nivetha-nagalingam](https://github.com/nivetha-nagalingam), [@phunkeler](https://github.com/phunkeler), [@prakashKannanSf3972](https://github.com/prakashKannanSf3972), [@praveenkumarkarunanithi](https://github.com/praveenkumarkarunanithi), [Shane Neuville](https://github.com/PureWeen), [Rui Marinho](https://github.com/rmarinho), [@sankaranarayananr](https://github.com/sankaranarayananr), [Stéphane Delcroix](https://github.com/StephaneDelcroix), [@SubhikshaSf4851](https://github.com/SubhikshaSf4851), [@SuthiYuvaraj](https://github.com/SuthiYuvaraj), [@SyedAbdulAzeemSF4852](https://github.com/SyedAbdulAzeemSF4852), [@Tamilarasan-Paranthaman](https://github.com/Tamilarasan-Paranthaman), [@TamilarasanSF4853](https://github.com/TamilarasanSF4853), [@Vignesh-SF3580](https://github.com/Vignesh-SF3580), [@VitalyKnyazev](https://github.com/VitalyKnyazev)
Full Changelog: https://github.com/dotnet/maui/compare/10.0.0-preview.3.25208.1…10.0.0-preview.4.25259.2