Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 第二个窗口仅恢复到WindowsState。正常_C#_Wpf - Fatal编程技术网

C# 第二个窗口仅恢复到WindowsState。正常

C# 第二个窗口仅恢复到WindowsState。正常,c#,wpf,C#,Wpf,启动时,我在第二个屏幕上放置了一个子窗口。但是在最小化主窗口后,当我再次将其最大化时,子窗口将获得窗口状态Normal public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); Loaded += MainWindow_Loaded; } private void MainWindow_Loaded(object

启动时,我在第二个屏幕上放置了一个子窗口。但是在最小化主窗口后,当我再次将其最大化时,子窗口将获得窗口状态
Normal

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

        Loaded += MainWindow_Loaded;
    }

    private void MainWindow_Loaded(object sender, RoutedEventArgs e)
    {
        var childWindow = new Window();
        childWindow.Owner = this;
        childWindow.Left = 2400;
        childWindow.Top = 0;
        childWindow.Loaded += OnWindowLoaded; // ensure maximizing on the second screen
        childWindow.Show();
    }

    private void OnWindowLoaded(object sender, RoutedEventArgs e)
    {
        var window = sender as Window;
        if (window != null)
        {
            window.WindowState = WindowState.Maximized;
        }
    }
}

当主窗口的状态改变时,我也尝试设置为最大化,但没有成功。如何防止将第二个窗口设置为
Normal
?瓦尔·奇尔温多?就我而言,它是有效的。我认为还有另一段代码导致了这个问题。你能发布调用此代码的方法吗?@CoskunOzogul是对的。而且,启动时只会调用一次
OnWindowLoaded
事件,并将最大化子窗口,然后它应该保持不变,直到手动状态更改!添加了完整的代码。一开始一切都很好。但首先最小化主窗口,然后再次恢复它。孩子们现在的状态如何?