wpf показать/скрыть окно из трэя
нужно по нажатию на иконку в трее показать/скрыть окно.
в данный момент: если окно было свернуто при скрытии то показывается тоже свернутым, аналогично при развернутом. как сделать чтобы при показе свернутого окна оно показывалось на экране и выходило на передний план?
"Развернуто" означает обычный вид, не на весь экран
notifyicon.MouseClick += new System.Windows.Forms.MouseEventHandler(showhideform);
private void showhideform(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
if (Visibility == Visibility.Visible)
{
Hide();
ShowInTaskbar = false;
}
else
{
Show();
ShowInTaskbar = true;
}
}
}
Ответы (1 шт):
Автор решения: Pavel Popov
→ Ссылка
WindowState указывает сотсояние окна(можно и развернуть окно). Topmost на время делает окно с признаком "поверх всех", что бы гарантированно вывести его наверх, а потом параметр можно снять. Activate() признаться не понмю, но чему то помогал :-)
Show();
Topmost = true;
WindowState = WindowState.Normal;
Activate();
Topmost = false;