Enviar a bandeja sobre Fechar
-
06-09-2019 - |
Pergunta
Como posso enviar a janela minimizada para a bandeja quando em clique no botão fechar? Também como mostrar ícone na bandeja quando iniciar a aplicação?
Solução
Não há nada que vem embutido com WPF. De implementações que você pode encontrar na rede, há uma "fácil" um, que usa WinForms:
http://msdn.microsoft.com/en-us/library/ aa972170.aspx
Mas como este mais (pode ser usado para dicas de balão também)
Outras dicas
WinForm:
Uma abordagem é para definir a propriedade Cancel de FormClosingEventArgs em caso FormClosing da sua janela e, em vez minimizar a bandeja. Para minimizar a bandeja, consulte este artigo:
Code Project tem mais artigos sobre o tema, mas o Liguei funcionou para mim.
WPF:
Eu nunca tive que fazer isso em WPF, mas se picar em torno de uma solução. Eu encontrei esta:
Criando um ícone da bandeja para um aplicativo WPF
Você vai encontrar o código funciona, mas eu recomendo testar. As artigo aborda abrir um aplicativo minimizado para a bandeja.
Você também pode encontrar este exemplo no MSDN útil:
Em winforms você pode sobrecarregar WndProc e prestar atenção para a mensagem WM_CLOSE.
WM_CLOSE = 0x0010
protected override void WndProc(ref Message m)
{
if(m.Msg == WM_CLOSE)
{
this.Hide();
trayIcon.Show();
}
}