mirror of
https://github.com/ckaczor/wpf-notifyicon.git
synced 2026-01-18 01:35:38 -05:00
WPF NotifyIcon
--------------
FIX Dispose only deregisters OnExit event listenter if there is actually an
application (not the case in WinForms environments).
CHG Added dispose to WinForms sample which closes the NotifyIcon.
git-svn-id: https://svn.evolvesoftware.ch/repos/evolve.net/WPF/NotifyIcon@121 9f600761-6f11-4665-b6dc-0185e9171623
This commit is contained in:
@@ -12,8 +12,10 @@ FIX If a popup is opened, its window handle is now being set as the foreground
|
||||
This fixes an issue with certain controls being disabled on popups.
|
||||
(thanks Andrew Smith for pointing me in the right direction!).
|
||||
FIX Changed dispatcher access in order to work in WinForms scenarios, too.
|
||||
FIX Corrected typo in WindowMessageSink.BalloonToolTipChanged event. Used internally
|
||||
(although event is public), so users should be fine.
|
||||
FIX Corrected typo in WindowMessageSink.BalloonToolTipChanged event (thanks Mertsch).
|
||||
Used internally (although event is public), so this shouldn't be a breaking change.
|
||||
FIX Dispose only deregisters OnExit event listenter if there is actually an
|
||||
application (not the case in WinForms environments).
|
||||
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
@@ -994,7 +994,10 @@ namespace Hardcodet.Wpf.TaskbarNotification
|
||||
IsDisposed = true;
|
||||
|
||||
//deregister application event listener
|
||||
Application.Current.Exit -= OnExit;
|
||||
if (Application.Current != null)
|
||||
{
|
||||
Application.Current.Exit -= OnExit;
|
||||
}
|
||||
|
||||
//stop timers
|
||||
singleClickTimer.Dispose();
|
||||
|
||||
@@ -15,6 +15,8 @@ namespace WindowsFormsSample
|
||||
{
|
||||
public partial class Form1 : Form
|
||||
{
|
||||
private TaskbarIcon notifyIcon;
|
||||
|
||||
public Form1()
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -23,11 +25,20 @@ namespace WindowsFormsSample
|
||||
protected override void OnLoad(EventArgs e)
|
||||
{
|
||||
base.OnLoad(e);
|
||||
TaskbarIcon tb = new TaskbarIcon();
|
||||
tb.Icon = Resources.Led;
|
||||
tb.Visibility = Visibility.Visible;
|
||||
notifyIcon = new TaskbarIcon();
|
||||
notifyIcon.Icon = Resources.Led;
|
||||
notifyIcon.ToolTipText = "Left-click to open popup";
|
||||
notifyIcon.Visibility = Visibility.Visible;
|
||||
|
||||
tb.TrayPopup = new FancyPopup();
|
||||
notifyIcon.TrayPopup = new FancyPopup();
|
||||
}
|
||||
|
||||
protected override void OnClosed(EventArgs e)
|
||||
{
|
||||
base.OnClosed(e);
|
||||
|
||||
//close the notify icon
|
||||
notifyIcon.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user