我有一个WPF窗口。它启用了最小化按钮。但要求是在单击最小化按钮时,窗口应进入系统托盘。以下代码将隐藏系统托盘中的窗口。我想在最小化按钮的点击事件上执行此代码吗?
CurrentWindowState = WindowState.Minimized;
OnStartClick();
Window_StateChanged();
private void Window_StateChanged()
{
if (CurrentWindowState == WindowState.Minimized)
{
ShowInTaskBar = false;
_notifyIcon.BalloonTipTitle = "Minimize Sucessful";
_notifyIcon.BalloonTipText = "Minimized the app ";
_notifyIcon.ShowBalloonTip(400);
_notifyIcon.Visible = true;
}
else if (CurrentWindowState == WindowState.Normal)
{
_notifyIcon.Visible = false;
ShowInTaskBar = true;
}
}
有没有这样做?或者还有其他方法吗?
答案 0 :(得分:2)
从StateChanged
Window
事件添加事件处理程序
例如
this.StateChanged += (s,e) => Window_StateChanged();
并检查如下
if (this.WindowState == WindowState.Minimized)
或
else if (this.WindowState == WindowState.Normal)
假设这是窗口的实例,并且此代码是用构造函数编写的。