C# 是否可以更改WPF窗口的最小化按钮事件?

C# 是否可以更改WPF窗口的最小化按钮事件?,c#,wpf,C#,Wpf,我有一个WPF窗口。它启用了最小化按钮。但要求是,单击最小化按钮时,窗口应进入系统托盘。以下代码将隐藏系统托盘中的窗口。我想在最小化按钮的单击事件上执行此代码 CurrentWindowState = WindowState.Minimized; OnStartClick(); Window_StateChanged(); private void Window_StateChanged() { if (Curr

我有一个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;
        }
    }

有什么办法可以这样做吗?或者有其他方法可以做到这一点吗?

将事件处理程序添加到
StateChanged
event from
Window

乙二醇

并检查如下

if (this.WindowState == WindowState.Minimized)


假设这是window的实例,并且此代码是在构造函数中编写的。

将事件处理程序添加到
StateChanged
event from
window

乙二醇

并检查如下

if (this.WindowState == WindowState.Minimized)

假设这是window的实例,并且此代码是在构造函数中编写的

else if (this.WindowState == WindowState.Normal)