diff --git a/HandyControl/Controls/Other/Growl.cs b/HandyControl/Controls/Other/Growl.cs index b9523dbd..31b3c932 100644 --- a/HandyControl/Controls/Other/Growl.cs +++ b/HandyControl/Controls/Other/Growl.cs @@ -552,13 +552,33 @@ namespace HandyControl.Controls /// /// 清除 /// - public static void Clear() + /// + public static void Clear(string token = "") { - GrowlPanel.Children.Clear(); - if (GrowlPanel.ContextMenu != null) + if (!string.IsNullOrEmpty(token)) { - GrowlPanel.ContextMenu.IsOpen = false; - GrowlPanel.ContextMenu.Opacity = 1; + if (PanelDic.TryGetValue(token, out var panel)) + { + Clear(panel); + } + } + else + { + Clear(GrowlPanel); + } + } + + /// + /// 清除 + /// + /// + private static void Clear(Panel panel) + { + panel.Children.Clear(); + if (panel.ContextMenu != null) + { + panel.ContextMenu.IsOpen = false; + panel.ContextMenu.Opacity = 1; } }