diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemo.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemo.xaml index f2703173e..31c881dd2 100644 --- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemo.xaml +++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemo.xaml @@ -1,4 +1,4 @@ - + + + @@ -75,6 +78,9 @@ + + + diff --git a/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs b/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs index 6110cbc09..b83c0d015 100644 --- a/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs +++ b/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs @@ -148,11 +148,12 @@ public void ShowBalloonTip(string title, string content, NotifyIconInfoType info var data = new InteropValues.NOTIFYICONDATA { - uFlags = InteropValues.NIF_INFO, + uFlags = InteropValues.NIF_INFO | InteropValues.NIF_MESSAGE, hWnd = _messageWindowHandle, uID = _id, szInfoTitle = title ?? string.Empty, - szInfo = content ?? string.Empty + szInfo = content ?? string.Empty, + uCallbackMessage = InteropValues.WM_TRAYMOUSEMESSAGE }; data.dwInfoFlags = infoType switch @@ -163,6 +164,7 @@ public void ShowBalloonTip(string title, string content, NotifyIconInfoType info NotifyIconInfoType.None => InteropValues.NIIF_NONE, _ => data.dwInfoFlags }; + data.dwInfoFlags |= InteropValues.NIIF_USER; InteropMethods.Shell_NotifyIcon(InteropValues.NIM_MODIFY, data); } diff --git a/src/Shared/HandyControl_Shared/Tools/Interop/InteropValues.cs b/src/Shared/HandyControl_Shared/Tools/Interop/InteropValues.cs index 68f42f8f4..6839a905d 100644 --- a/src/Shared/HandyControl_Shared/Tools/Interop/InteropValues.cs +++ b/src/Shared/HandyControl_Shared/Tools/Interop/InteropValues.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Diagnostics.CodeAnalysis; using System.IO; using System.Runtime.InteropServices; @@ -50,6 +50,7 @@ internal const int NIIF_INFO = 0x00000001, NIIF_WARNING = 0x00000002, NIIF_ERROR = 0x00000003, + NIIF_USER = 0x00000004, WM_ACTIVATE = 0x0006, WM_QUIT = 0x0012, WM_GETMINMAXINFO = 0x0024,