diff --git a/src/Wpf.Ui/Controls/NavigationView/NavigationViewContentPresenter.cs b/src/Wpf.Ui/Controls/NavigationView/NavigationViewContentPresenter.cs index 636c530c2..d35cb52b7 100644 --- a/src/Wpf.Ui/Controls/NavigationView/NavigationViewContentPresenter.cs +++ b/src/Wpf.Ui/Controls/NavigationView/NavigationViewContentPresenter.cs @@ -183,47 +183,39 @@ private void ApplyTransitionEffectToNavigatedPage(object content) private static void NotifyContentAboutNavigatingTo(object content) { - if (content is INavigationAware navigationAwareNavigationContent) + switch (content) { - navigationAwareNavigationContent.OnNavigatedTo(); - } - - if ( - content is INavigableView + case INavigationAware navigationAwareNavigationContent: + navigationAwareNavigationContent.OnNavigatedTo(); + break; + case INavigableView { ViewModel: INavigationAware navigationAwareNavigableViewViewModel - } - ) - { - navigationAwareNavigableViewViewModel.OnNavigatedTo(); - } - - if (content is FrameworkElement { DataContext: INavigationAware navigationAwareCurrentContent }) - { - navigationAwareCurrentContent.OnNavigatedTo(); + }: + navigationAwareNavigableViewViewModel.OnNavigatedTo(); + break; + case FrameworkElement { DataContext: INavigationAware navigationAwareCurrentContent }: + navigationAwareCurrentContent.OnNavigatedTo(); + break; } } private static void NotifyContentAboutNavigatingFrom(object content) { - if (content is INavigationAware navigationAwareNavigationContent) + switch (content) { - navigationAwareNavigationContent.OnNavigatedFrom(); - } - - if ( - content is INavigableView + case INavigationAware navigationAwareNavigationContent: + navigationAwareNavigationContent.OnNavigatedFrom(); + break; + case INavigableView { ViewModel: INavigationAware navigationAwareNavigableViewViewModel - } - ) - { - navigationAwareNavigableViewViewModel.OnNavigatedFrom(); - } - - if (content is FrameworkElement { DataContext: INavigationAware navigationAwareCurrentContent }) - { - navigationAwareCurrentContent.OnNavigatedFrom(); + }: + navigationAwareNavigableViewViewModel.OnNavigatedFrom(); + break; + case FrameworkElement { DataContext: INavigationAware navigationAwareCurrentContent }: + navigationAwareCurrentContent.OnNavigatedFrom(); + break; } } }