[英]WPF C# Close Window onclick
我有一個使用 FirstFloor MUI Framework 應用程序的 WPF C#,它在啟動時檢查設置並顯示特定的啟動 uri,如下所示;
if(somethings_true) {
Application curApp = Application.Current;
//ModernWindow
curApp.StartupUri = new Uri("MainWindow.xaml", UriKind.RelativeOrAbsolute);
}else{
Application curApp = Application.Current;
//ModernWindow
curApp.StartupUri = new Uri("OtherWindow.xaml", UriKind.RelativeOrAbsolute);
}
這工作正常,但是當“OtherWindow.xaml”首先處於活動狀態時,它有一個執行其他檢查的 onclick 事件,並在完成時打開 MainWindow.xaml。 但是在打開 MainWindow.xaml 的 Button_Click() 中,我無法關閉 OtherWindow.xaml,我在 OtherWindow.xaml 中嘗試過。
this.Close();
&
var OtherWin = new OtherWindow();
OtherWin.Close();
&
var w = Application.Current.Windows[0];
w.Hide();
//Only hides the OtherWindows.xaml (Still runs hidden in background even after MainWindow.xaml is closed)
我使用下面的代碼來檢查 OtherWindow.xaml 是否仍然在 MainWindow.xaml 中打開,其中聲明它確實如此;
foreach (var wndOtherWindow in Application.Current.Windows)
{
if (wndOtherWindow is OtherWindow)
{
//Its Open Still...
//How to close() "OtherWindow.xaml" from here?
}
}
有沒有另一種方法來關閉()OtherWindow.xaml?
您應該轉換為 Window 或特定類型(在您的情況下為 OtherWindow),這樣您就可以調用 Close() 方法。 嘗試這個:
foreach (var wndOtherWindow in Application.Current.Windows)
{
if (wndOtherWindow is OtherWindow)
{
(wndOtherWindow as Window).Close();
}
}
希望有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.