예제 #1
0
        private void RefreshIconState()
        {
            DDnsSharpTray.SetStatus(vm.ServiceStatus);
            string serviceStr;

            switch (vm.ServiceStatus)
            {
            case ServiceStatus.Running:
                serviceStr = "服务正在运行.";
                break;

            case ServiceStatus.Stopped:
                serviceStr = "服务已停止.";
                break;

            case ServiceStatus.NotExist:
                serviceStr = "服务尚未安装.";
                break;

            default:
                serviceStr = "服务状态未知.";
                break;
            }
            DDnsSharpTray.Current.Text = "DDnsSharp: " + serviceStr + "\r\n双击打开或隐藏界面.";
        }
예제 #2
0
        private void GetServiceStatus()
        {
            if (service != null)
            {
                service.Refresh();
            }
            var ss = ServiceControl.GetServiceStatus(service);

            if (ss != serviceStatus)
            {
                serviceStatus = ss;
                DDnsSharpTray.SetStatus(serviceStatus);
                string serviceStr;
                switch (serviceStatus)
                {
                case ServiceStatus.Running:
                    serviceStr = "服务正在运行.";
                    break;

                case ServiceStatus.Stopped:
                    serviceStr = "服务已停止.";
                    break;

                case ServiceStatus.NotExist:
                    serviceStr = "服务尚未安装.";
                    break;

                default:
                    serviceStr = "服务状态未知.";
                    break;
                }
                DDnsSharpTray.Current.Text = "DDnsSharp: " + serviceStr + "\r\n双击打开或隐藏界面.";
            }
        }
예제 #3
0
        public DDNSMonitorWindow()
        {
            InitializeComponent();

            mconfig = MonitorIoc.Current.Get <MonitorConfig>();
            vm      = DataContext as DDNSMonitorWindowViewModel;

            DDnsSharpTray.Init();
            var notifyIcon = DDnsSharpTray.Current;

            RefreshIconState();
            notifyIcon.Visible  = true;
            vm.PropertyChanged += vm_PropertyChanged;

            this.StateChanged += DDNSMonitorWindow_StateChanged;
            this.Closing      += DDNSMonitorWindow_Closing;
            this.Closed       += (o, e) => vm.Cleanup();
        }
예제 #4
0
 public static void ExitApp()
 {
     DDnsSharpTray.Dispose();
     Environment.Exit(0);
 }