簡體   English   中英

WinUI3中如何關閉Window?

[英]How to close Window in WinUI3?

我有一個由兩部分組成的應用程序。 第一部分是登錄表單,用戶需要在其中輸入登錄名和密碼。 如果它們是正確的,它會啟動用戶可以工作的“編輯器”window。

現在為了啟動第二個 window 我使用:

var editorWindow = new EditorWindow();
editorWindow.Activate();

問題是Login window還在,雖然不嚴重,但我還是想在Login完成后關閉它。

我第一次嘗試在第一個 Window 的.cs 文件中打開第二個 window 后添加 Window.Close(),所以

var editorWindow= new EditorWindow();
editorWindow.Activate();

var oldWindow = new MainWindow();
oldWindow.Close();

這導致Attempted to read or write protected memory 我試圖在第二個 Window.cs 文件中這樣做:

this.InitializeComponent();

var oldWindow = new MainWindow();
oldWindow.Close();

這導致了同樣的錯誤

那么我怎樣才能正確地做到這一點?

如果您在第一個 window 的代碼隱藏中打開第二個 window,您應該能夠在新的 window 上調用Activate()之后立即調用this.Close()

var editorWindow= new EditorWindow();
editorWindow.Activate();

this.Close();

如果從其他地方打開EditorWindow ,則需要獲取對第一個 window 的引用才能關閉它。 例如,您可以按照此處的建議在App class 中使用變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM