From fbef065a5ca00af14eb0cfcdd4d36550752ef75b Mon Sep 17 00:00:00 2001 From: rabbitism Date: Sun, 25 Feb 2024 22:12:49 +0800 Subject: [PATCH] feat: close existing dialogs when host is unregistered. --- src/Ursa/Controls/OverlayShared/OverlayDialogHost.Shared.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Ursa/Controls/OverlayShared/OverlayDialogHost.Shared.cs b/src/Ursa/Controls/OverlayShared/OverlayDialogHost.Shared.cs index 2d768ca..4f30375 100644 --- a/src/Ursa/Controls/OverlayShared/OverlayDialogHost.Shared.cs +++ b/src/Ursa/Controls/OverlayShared/OverlayDialogHost.Shared.cs @@ -126,6 +126,10 @@ public partial class OverlayDialogHost: Canvas protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e) { + while (_layers.Count>0) + { + _layers[0].Element.Close(); + } OverlayDialogManager.UnregisterHost(HostId); base.OnDetachedFromVisualTree(e); }