2016-09-28 6 views
-2

Я создал одно приложение WPF. У него есть одно окно, и оно скрывается при закрытой кнопке. Но я хочу показать его в панели уведомлений. и когда пользователь нажимает на это, тогда должны отображаться окна.Как отобразить текущее окно в панели уведомлений НЕ СКРЫТЬ в WPF

Вот мой код:

public MainWindow() 
{ 
    InitializeComponent(); 
    System.Timers.Timer aTimer = new System.Timers.Timer(); 
    aTimer.Elapsed += new ElapsedEventHandler(Timer_Elapsed); 
    aTimer.Interval = 3000; 
    aTimer.Enabled = true; 

} 

private void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) 
{ 
    lblProcess.Content = "Test Window" 

} 

// minimize to system tray when applicaiton is closed 
protected override void OnClosing(CancelEventArgs e) 
{ 
    // setting cancel to true will cancel the close request 
    // so the application is not closed 
    e.Cancel = true; 

    this.Hide(); 
    //this.Show(); 

    base.OnClosing(e); 
} 

Я уже прочитал это: create-popup-toaster-notifications-in-windows-with-net

И minimizing-application-to-system-tray-using-wpf-not-using-notifyicon

minimizing-closing-application-to-system-tray-using-wpf

Но не получил, как я могу это сделать ?

Любая помощь оценена!

+1

Возможный дубликат [минимизирующей/закрытия заявки на панели задач с использованием WPF] (http://stackoverflow.com/questions/27265139/minimizing-closing-application- to-system-tray-using-wpf) –

+0

@ManfredRadlwimmer, Вам нужно прочитать мой вопрос? Пожалуйста, прочтите его первым. Я хочу показать это в уведомлении –

+0

Да, я прочитал ваш вопрос. Сообщения, которые вы связали, содержат всю необходимую информацию. Если у вас есть дополнительные вопросы к ответам, которые вы уже прочитали, вы можете добавить комментарий (когда у вас достаточно репутации) к исходному ответу и попросить разъяснения. Поскольку вы не указали требуемый [MCVE], мы не можем помочь вам дальше, чем вы уже успели получить. –

ответ

1

я сделал, используя этот код:

System.Windows.Forms.NotifyIcon ni = new System.Windows.Forms.NotifyIcon(); 
ni.Icon = new System.Drawing.Icon("D:\\images.ico"); 
ni.Visible = true; 
ni.DoubleClick +=delegate(object sender, EventArgs args) 
       { 
        this.Show(); 
        this.WindowState = WindowState.Normal; 
       };