diff options
Diffstat (limited to 'Xamarin.Forms.Platform.WinRT')
-rw-r--r-- | Xamarin.Forms.Platform.WinRT/MasterDetailPageRenderer.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Xamarin.Forms.Platform.WinRT/MasterDetailPageRenderer.cs b/Xamarin.Forms.Platform.WinRT/MasterDetailPageRenderer.cs index dcef680e..dfeb3921 100644 --- a/Xamarin.Forms.Platform.WinRT/MasterDetailPageRenderer.cs +++ b/Xamarin.Forms.Platform.WinRT/MasterDetailPageRenderer.cs @@ -168,7 +168,10 @@ namespace Xamarin.Forms.Platform.WinRT else if (e.PropertyName == MasterDetailPage.IsPresentedProperty.PropertyName) UpdateIsPresented(); else if (e.PropertyName == MasterDetailPage.MasterBehaviorProperty.PropertyName) + { UpdateBehavior(); + UpdateIsPresented(); + } else if (e.PropertyName == Page.TitleProperty.PropertyName) UpdateTitle(); } @@ -276,6 +279,11 @@ namespace Xamarin.Forms.Platform.WinRT void UpdateIsPresented() { + // Ignore the IsPresented value being set to false for Split mode on desktop and allow the master + // view to be made initially visible + if ((Device.Idiom == TargetIdiom.Desktop || Device.Idiom == TargetIdiom.Tablet) && _container.IsMasterVisible && !Element.IsPresented && Element.MasterBehavior != MasterBehavior.Popover) + return; + UpdateBehavior(); bool isPresented = !GetIsMasterAPopover() || Element.IsPresented; |