C# 如何在WPF中正确实现窗口之间的切换?

C# 如何在WPF中正确实现窗口之间的切换?,c#,wpf,C#,Wpf,我正在创造一个游戏。我有游戏菜单。菜单的网格有一个带有视频文件的堆栈面板,用作菜单背景。但我有个问题。如何切换到“例如设置”窗口?当我像这样切换时 var settings = new Settings(); settings.Show(); 视频文件已关闭。我猜如果我将相同的stackPanel放入SettingsWindow网格,它将从Begging开始播放。帮助:(一种基本的方法是将多个布局分配给网格中的同一列和行,然后当您在想要切换显示的布局时点击事件,将布局。可见性设置为适当的折叠或

我正在创造一个游戏。我有游戏菜单。菜单的网格有一个带有视频文件的堆栈面板,用作菜单背景。但我有个问题。如何切换到“例如设置”窗口?当我像这样切换时

var settings = new Settings();
settings.Show();

视频文件已关闭。我猜如果我将相同的stackPanel放入SettingsWindow网格,它将从Begging开始播放。帮助:(

一种基本的方法是将多个布局分配给网格中的同一列和行,然后当您在想要切换显示的布局时点击事件,将布局。可见性设置为适当的折叠或可见()

从您的示例中,您希望设置SettingsStackPanel.Visibility=Collapsed,然后设置GameLayout.Visibility=Visibile

我还建议不要使用StackPanel来处理大小不变的东西。从长远来看,网格布局将具有更好的性能和更好的控制。这可能是一个很好的习惯,可以在制作游戏时提前进入


作为警告,这两种布局仍然可以更新,但听起来您的应用程序才刚刚开始。

您所说的“视频文件已关闭”到底是什么意思?它是否停止播放?或者只是不可见?要获得好的答案,需要更多信息。另请参阅。另一个提示:如果要将设置窗口显示为显示,请使用而不是
Show()
.Videofile不可见。我不想打开对话框窗口。只想保留我的背景视频文件。因此,您不想打开新窗口,但要使现有窗口的某些部分可见?如果您再发布一些代码(例如相关部分或XAML),这将很有帮助你能帮我一下吗?可能是skype?我可以给你看我的代码。你能帮我一下吗?可能是通过skype什么的。我会非常感激的