-
Notifications
You must be signed in to change notification settings - Fork 238
What’s new (.NET 10): rollup updates and cross-links #3004
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 3 commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
c64772d
Whats new: .NET 10 rollup updates (Shell NavBar animation, SearchHand…
davidortinau 0fcb087
Merge branch 'main' into pr12-whats-new-dotnet10-rollup-from-main
jfversluis ea68ad1
Update docs/whats-new/dotnet-10.md
jfversluis 7b5659b
Update docs/whats-new/dotnet-10.md
jfversluis ba6eef7
Update docs/whats-new/dotnet-10.md
jfversluis File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,7 @@ | ||
| --- | ||
| title: What's new in .NET MAUI for .NET 10 | ||
| description: Learn about the new features introduced in .NET MAUI for .NET 10. | ||
| ms.date: 05/13/2025 | ||
| ms.date: 08/20/2025 | ||
jfversluis marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| --- | ||
|
|
||
| # What's new in .NET MAUI for .NET 10 | ||
|
|
@@ -79,6 +79,8 @@ | |
|
|
||
| By default, any exceptions that are thrown by your JavaScript code will be sent to .NET, where they're re-thrown as .NET exceptions. | ||
|
|
||
| In addition, you can customize initialization and access platform web views to tweak settings when the native view is ready (for example, use `RunAfterInitialize` on Windows or adjust `WKWebView` configuration on iOS/Mac Catalyst). For details, see [Customize initialization and access platform web views](~/user-interface/controls/hybridwebview.md?view=net-maui-10.0&preserve-view=true#customize-initialization-and-access-platform-web-views). | ||
|
|
||
| #### New Events | ||
|
|
||
| Adds initialization events to `HybridWebView` following the same pattern as `BlazorWebView`, enabling platform-specific customization before and after initialization. | ||
|
|
@@ -138,12 +140,19 @@ | |
|
|
||
| ### Page | ||
|
|
||
| The `IsBusy` property is marked obsolete. | ||
| The `IsBusy` property is marked obsolete. In .NET 10 we recommend using <xref:Microsoft.Maui.Controls.ActivityIndicator> (or a similar UX) for page or view-specific busy states and avoiding long-lived global busy indicators. For guidance, see [ContentPage](~/user-interface/pages/contentpage.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ### Picker | ||
|
|
||
| Programmatically control picker state with new Open/Close API. | ||
|
|
||
| In addition, <xref:Microsoft.Maui.Controls.DatePicker> and <xref:Microsoft.Maui.Controls.TimePicker> support nullable selection in .NET 10. This enables clearing values and binding to nullable types: | ||
|
|
||
| - <xref:Microsoft.Maui.Controls.DatePicker.Date> is now <xref:System.DateTime?>; <xref:Microsoft.Maui.Controls.DatePicker.MinimumDate> and <xref:Microsoft.Maui.Controls.DatePicker.MaximumDate> are also nullable. | ||
| - <xref:Microsoft.Maui.Controls.TimePicker.Time> is now <xref:System.TimeSpan?>. | ||
|
|
||
| For examples and platform notes, see [DatePicker](~/user-interface/controls/datepicker.md?view=net-maui-10.0&preserve-view=true) and [TimePicker](~/user-interface/controls/timepicker.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ## RefreshView | ||
|
|
||
| Added `IsRefreshEnabled` property to be distinct from `IsEnabled` and make the behavior consistent across platforms. | ||
|
|
@@ -172,10 +181,6 @@ | |
|
|
||
| For more information, see [SearchBar](~/user-interface/controls/searchbar.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ### StackNavigationManager | ||
|
|
||
| Made public on Android. | ||
|
|
||
| ### Switch | ||
|
|
||
| <xref:Microsoft.Maui.Controls.Switch> gains an `OffColor` bindable property that sets the color of the switch when it's in the off state: | ||
|
|
@@ -187,10 +192,6 @@ | |
|
|
||
| For more information, see [Switch](~/user-interface/controls/switch.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ### TabbedPageManager | ||
|
|
||
| Made this public for advanced customization scenarios. | ||
|
|
||
| ### TableView | ||
|
|
||
| <xref:Microsoft.Maui.Controls.TableView> has been deprecated. Instead, <xref:Microsoft.Maui.Controls.CollectionView> should be used. | ||
|
|
@@ -205,6 +206,21 @@ | |
|
|
||
| For more information, see [Play video fullscreen](~/user-interface/controls/webview.md?view=net-maui-10.0&preserve-view=true#play-video-full-screen-on-android). | ||
|
|
||
| You can also programmatically enable or disable JavaScript execution on Android with a .NET 10 platform-specific API. For details and a code example, see [WebView](~/user-interface/controls/webview.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ### SearchHandler | ||
|
|
||
| <xref:Microsoft.Maui.Controls.SearchHandler> adds APIs to programmatically show or hide the soft keyboard, making it easier to control focus and user input flow: | ||
|
|
||
| - `ShowSoftInputAsync` | ||
| - `HideSoftInputAsync` | ||
|
|
||
| For examples and platform notes, see [Search](~/fundamentals/shell/search.md?view=net-maui-10.0&preserve-view=true). If you use reflection-based properties such as `DisplayMemberName`, review the [trimming guidance](~/deployment/trimming.md?view=net-maui-10.0&preserve-view=true) for feature switches and linker configuration. | ||
|
|
||
| ## Shell | ||
|
|
||
| .NET 10 introduces a toggle to control the shell navigation bar visibility animation. Use `Shell.NavBarVisibilityAnimationEnabled` to enable or disable the animation when the navigation bar shows or hides. See [Shell appearance and behavior](~/fundamentals/shell/index.md?view=net-maui-10.0&preserve-view=true). | ||
|
|
||
| ## Diagnostics | ||
|
|
||
| We've added comprehensive diagnostics and metrics tracking for .NET MAUI applications, focusing on layout performance monitoring with an extensible architecture for future observability needs. | ||
|
|
@@ -238,12 +254,7 @@ | |
|
|
||
| <xref:Microsoft.Maui.Controls.MessagingCenter> has been made internal in .NET 10. Usage of it in your code can be replaced with `WeakReferenceMessenger` in the [CommunityToolkit.Mvvm](https://www.nuget.org/packages/CommunityToolkit.Mvvm) NuGet package. For more information, see [Messenger](/windows/communitytoolkit/mvvm/messenger). | ||
|
|
||
| ## Shadows | ||
|
|
||
| In .NET 10, the `ShadowTypeConverter` class, in the `Microsoft.Maui.Controls` namespace, is now public. | ||
|
|
||
| For more information about how shadows can be specified using formatted strings, see [Shadow](~/user-interface/shadow.md). | ||
|
|
||
|
Check failure on line 257 in docs/whats-new/dotnet-10.md
|
||
jfversluis marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| ## Platform features | ||
|
|
||
| .NET MAUI's platform features have received some updates in .NET 10. | ||
|
|
||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.