C# winform wpf 实现窗体最小化时显示到(桌面右下角)系统托盘

1、新建窗体
2、设置窗体 ShowInTaskbar=false(以及icon的图标属性)
这时窗体不会在任务栏中展示了,但是窗体最小化的时候我这里会在桌面左下角或某个位置展示一小块区域。这时需要彻底隐藏窗体,最小化时隐藏窗体。
3、最小化时彻底隐藏窗体

this.StateChanged += (o, e) =>
 {
     if (WindowState == WindowState.Minimized)
         this.Hide();
 };

4、win_loaded中加入代码

System.Windows.Forms.NotifyIcon icon = null;

private void MainWindow_Loaded(object sender, RoutedEventArgs e)
 {
     this.notifyIcon = new System.Windows.Forms.NotifyIcon();
     this.notifyIcon.BalloonTipText = this.Title;
     this.notifyIcon.Text = this.Title;
     //this.notifyIcon.Icon = new System.Drawing.Icon(@"Resources\logo.ico");
     this.notifyIcon.Visible = true;
     //点击托盘 展示窗体
     this.notifyIcon.Click += (o, e1) => 
     {
         this.Show(); //this.Visible=true;
         this.WindowState = WindowState.Normal;
     }; 
 }

5、也可加入菜单或其它选项功能。

你可能感兴趣的:(C#,c#,wpf,开发语言)