C# WPF最小化和最大化

C# WPF最小化和最大化,c#,wpf,fullscreen,C#,Wpf,Fullscreen,我希望在我的应用程序中有两个启动选项:最大化启动和最小化启动。这里没有问题,但我也希望它们都被选中,在这种情况下,我希望它开始最小化,但如果用户单击应用程序来显示它,那么它应该被最大化(覆盖整个屏幕)。我认为,如果我在最小化之前先将其最大化,它应该保持这种状态,但事实并非如此,而是在这里它被最小化,然后当打开它时,它处于“正常”状态 这是您正在查找的状态更改事件 public MainWindow() { InitializeComponent();

我希望在我的应用程序中有两个启动选项:最大化启动和最小化启动。这里没有问题,但我也希望它们都被选中,在这种情况下,我希望它开始最小化,但如果用户单击应用程序来显示它,那么它应该被最大化(覆盖整个屏幕)。我认为,如果我在最小化之前先将其最大化,它应该保持这种状态,但事实并非如此,而是在这里它被最小化,然后当打开它时,它处于“正常”状态


这是您正在查找的状态更改事件

    public MainWindow()
    {
        InitializeComponent();
        if (ConfigHandler.Instance.Minimized)
            WindowState = System.Windows.WindowState.Minimized;
        this.StateChanged += MainWindow_StateChanged;
    }
    void MainWindow_StateChanged(object sender, EventArgs e)
    {
        if (ConfigHandler.Instance.Fullscreen)
            WindowState = System.Windows.WindowState.Maximized;
        this.StateChanged -= MainWindow_StateChanged;//to prevent further effect
    }

您是否将窗口设置为
WindowState.Normal
    public MainWindow()
    {
        InitializeComponent();
        if (ConfigHandler.Instance.Minimized)
            WindowState = System.Windows.WindowState.Minimized;
        this.StateChanged += MainWindow_StateChanged;
    }
    void MainWindow_StateChanged(object sender, EventArgs e)
    {
        if (ConfigHandler.Instance.Fullscreen)
            WindowState = System.Windows.WindowState.Maximized;
        this.StateChanged -= MainWindow_StateChanged;//to prevent further effect
    }