1. 启动时设置初始状态、图标对象
2. 定义双击事件
3. 定义最小化事件
WindowState _wsl; //状态保存 NotifyIcon _notifyIcon; //图标对象 private void icon() { _notifyIcon = new NotifyIcon(); _notifyIcon.BalloonTipText = Properties.Resources.MainWindow_icon_Alf7_ScreenCapture; _notifyIcon.Text = Properties.Resources.MainWindow_icon_Alf7_ScreenCapture; _notifyIcon.Icon = new Icon("scissor.ico"); _notifyIcon.Visible = true; _notifyIcon.MouseDoubleClick += OnNotifyIconDoubleClick; _notifyIcon.ShowBalloonTip(1000); } private void OnNotifyIconDoubleClick(object sender, EventArgs e) { Show(); WindowState = _wsl; } private void Window_StateChanged(object sender, EventArgs e) { if (WindowState == WindowState.Minimized) { Hide(); } } private void MainWindow_OnLoaded(object sender, RoutedEventArgs e) { icon(); _wsl = WindowState; }
原文:http://www.cnblogs.com/Alf7/p/3576961.html