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窗口提示信息

相关推荐
gis开发之家20 小时前
Spring Boot 4 定时任务与异步线程池:从 @Scheduled 到高并发任务编排(生产级实战)
java·spring boot·后端·wpf·spring boot4
clz13145212 天前
如何设计一个优雅可靠的金融级联机接口
wpf
闲云自留地3 天前
云平台存储管理员:Cinder 创建挂载卷 + Swift 分布式存储原理
分布式·wpf·swift
敲代码的嘎仔3 天前
从集群锁失效到异步领券:我用分布式锁 + Redisson + MQ 把领券接口 RT 从 200ms 压到 15ms
java·数据库·redis·分布式·缓存·ai·wpf
闲云自留地4 天前
OpenStack 的身份管家:Keystone 令牌、RBAC 权限模型拆解
wpf·openstack
FuckPatience6 天前
WPF 窗体唤醒,判断是否已存在,存在则弹出
wpf
程序员清风6 天前
从单体应用到微服务:后端系统拆分的基本方法
微服务·架构·wpf
FuckPatience7 天前
WPF 改变根据某一列条件改变行样式
wpf
dalong107 天前
WPF:DataGrid样式
wpf
samble9 天前
从零搭建工业控制系统(二十二):线程安全与并发控制
c#·wpf·并发·mvvm·线程安全·工业控制