### Description of Change
Fixes a long-standing crash when navigating pages:
1. Manually clear the `ContentPresenter.Content` property.
When navigating pages it was discovered that the `Content` property of
the `ContentPresenter` sometimes was not being detached from the parent
`ContentPresenter` (the `ContentPresenter` itself does detach from the
Page). A workaround for this was to manually clear the `Content`
property.
**The actual cause of this bug:** I suspect that something causing the
lifecycle tracking to be messed up. I'm still not sure what this is, but
for now this will help our customers more than nothing.
## Workaround
The following can be used as a workaround. Place it in the `Loaded`
event for your `AppShell`:
```csharp
private void AppShell_Loaded(object? sender, EventArgs e)
{
Loaded -= AppShell_Loaded;
#if WINDOWS
if (Handler != null && Handler.PlatformView is ShellView shellView &&
shellView.Content is MauiNavigationView nv &&
nv.Content is Microsoft.UI.Xaml.Controls.Frame frame)
{
frame.Navigating += (s, e) =>
{
if (frame.Content is Microsoft.UI.Xaml.Controls.Page page)
{
page.Unloaded += PageUnloaded;
void PageUnloaded(object sender, Microsoft.UI.Xaml.RoutedEventArgs e)
{
page.Unloaded -= PageUnloaded;
if (page.Content is Microsoft.UI.Xaml.Controls.ContentPresenter presenter)
{
presenter.Content = null;
}
};
}
};
}
#endif
}
```
### Issues Fixed
Fixes#22790#18441#22131
* enabled UITests from XamarinUI test to appium
* Update AppiumApp.cs
Getting reference from this commit 9dab842bc5
* Added issue link for fails attribute - Issue7534.cs
* Migrated the Issue2740 and ListViewNRE (#1)
* Migrated the Issue2740 and ListViewNRE
* Migrated the Issue1355 and Issue2923
* Feedback addressed
---------
Co-authored-by: nivetha-nagalingam <nivetha.nagalingam@syncfusion.com>
* optimized the test code changes
---------
Co-authored-by: nivetha-nagalingam <nivetha.nagalingam@syncfusion.com>
* [Windows] TapGestureRecognizer not working on Entry
* RemoveHandler added for tapped and double tapped event
* Test case committed
* snapshot for ios platform has committed
* Review correction committed
* Codes modified and committed
* Properly handled tapped and double tapped event handlers.
* code changes committed
* Snapshots committed
* Comment added for why Fails on mac attribute is added.
* Removed failsOnMac attribute
---------
Co-authored-by: Karthik Raja <karthikraja.kalaimani@syncfusion.com>
Co-authored-by: KarthikRajaKalaimani <92777139+KarthikRajaKalaimani@users.noreply.github.com>
* enabled four test cases from xamarinui test
* ignore mac and windows for back operations
* enabled Issue8186 tests
* reverted navigation test issue changes
* enabled Issue13203
* reverted unwanted changes
You are really supposed to use 17.12 for .NET9 support.
Also, when I used 17.11, though it mostly worked, I saw the error "The 'interceptors' feature is not enabled in this namespace. Add '<InterceptorsNamespaces>...". That error went away when moving to 17.12 P5.
Co-authored-by: Bret Johnson <bretjohn@microsoft.com>