WPF程序添加托盘图标

程序添加托盘图标

UI层

csharp 复制代码
//添加handycontrol的引用
 xmlns:hc="https://handyorg.github.io/handycontrol"
 
 
 //添加NotifyIcon图标 实现单击 双击 二级菜单点击功能
   <hc:NotifyIcon
      Text="通知"
      Token="Info">
      <hc:NotifyIcon.ContextMenu>
          <ContextMenu>
              <MenuItem Command="hc:ControlCommands.PushMainWindow2Top" Header="Open" />
              <MenuItem Command="hc:ControlCommands.ShutdownApp" Header="Exit" />
          </ContextMenu>
      </hc:NotifyIcon.ContextMenu>
      <hc:Interaction.Triggers>
          <hc:EventTrigger EventName="Click">
              <hc:EventToCommand Command="hc:ControlCommands.PushMainWindow2Top"/>
          </hc:EventTrigger>
          <hc:EventTrigger EventName="MouseDoubleClick">
              <hc:EventToCommand Command="hc:ControlCommands.PushMainWindow2Top"/>
          </hc:EventTrigger>
      </hc:Interaction.Triggers>
  </hc:NotifyIcon>
  
  

后台调用,通过设置的Token值获取到NotifyIcon实例,显示图标

csharp 复制代码
  private void SendNotification()
  {
    NotifyIcon.ShowBalloonTip("托盘图标测试", "托盘", NotifyIconInfoType.None,"Info");
  }

当窗口关闭时,提示

csharp 复制代码
      //是否启用托盘图标显示功能
        private bool UseMode=true;
        protected override void OnClosing(CancelEventArgs e)
        {
            if(UseMode)
            {
                HandyControl.Controls.MessageBox.Info(Properties.Settings.Default.关闭软件提示, "提示");
                Hide();
               
                e.Cancel = true;
            }
            else
            {
                base.OnClosing(e);
            }
         
        }

Properties.Settings.Default.XXX :读取配置文件Settings.settings中的值

HandyControl.Controls.MessageBox.Info:HandyControl窗口提示信息

相关推荐
就是有点傻23 分钟前
C#中面试的常见问题004
面试·职场和发展·c#·wpf
martian6652 小时前
C# 开发应用篇——C# 基于WPF实现数据记录导出excel详解
c#·wpf·excel
就是有点傻14 小时前
C#中面试的常见问题005
开发语言·面试·c#·wpf
gjhaoiaao15 小时前
《白帽子讲Web安全》13-14章
安全·web安全·php·wpf
就是有点傻16 小时前
WPF中的Button按钮中的PreviewMouseLeftButtonDown事件和MouseLeftButtonDown的区别
c#·wpf
海的那边-16 小时前
WPF 加载页面的三种方式(瞬时加载,延迟加载,异步行为)
wpf
lfw201916 小时前
WPF ItemsControl控件
wpf
就是有点傻1 天前
C#中面试的常见问题007
面试·c#·wpf
就是有点傻1 天前
C#中面试的常见问题006
开发语言·面试·c#·wpf
就是有点傻2 天前
WPF中如何让Textbox显示为一条直线
c#·wpf