Сворачиваем приложение в трей

Сворачиваем приложение в трей


      

public Form1()

        {          
            InitializeComponent();
            notifyIcon1.Visible = false;
            this.notifyIcon1.MouseDoubleClick += new MouseEventHandler(notifyIcon1_MouseDoubleClick);
            this.Resize += new System.EventHandler(this.Form1_Resize);
        }

    
 private void Form1_Resize(object sender, EventArgs e)
        {
            // проверяем наше окно, и если оно было свернуто, делаем событие      
            if (WindowState == FormWindowState.Minimized)
            {
                // прячем наше окно из панели
                this.ShowInTaskbar = false;
                // делаем нашу иконку в трее активной
                notifyIcon1.Visible = true;
            }
        }
Выбираем начальную иконку в трее

Обработка нажатия клавиши
           switch (timer1.Enabled)
                   {
                       case true:
                           {
                               notifyIcon1.Icon = new Icon("stop.ico");
                               notifyIcon1.Text = ("Stop");
                               timer1.Stop();
                               Form1.ActiveForm.Focus();
                               break;
                           }
                       case false:
                           {
                               notifyIcon1.Icon = new Icon("appicon.ico");
                               notifyIcon1.Text = ("Start");
                               timer1.Start();                             
                               Form1.ActiveForm.Focus();
                               break;
                           }
                   }
Form1.Designer.cs

  // notifyIcon1
            //
            this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1;          
            this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
            this.notifyIcon1.Text = "notifyIcon1";


private void exitToolStripMenuItem_Click_1(object sender, EventArgs e)
               {
                   this.Close();
                   timer1.Enabled = false;
               }

Для запуска в трее

Популярные сообщения из этого блога

Пишем логи на C# (.NET). Легкий способ.

Авторизация yii 2 из базы

Средства для работы с базой данный PostgreSql