Window.Owner 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
public:
property System::Windows::Window ^ Owner { System::Windows::Window ^ get(); void set(System::Windows::Window ^ value); };
public System.Windows.Window Owner { [System.Security.SecurityCritical] get; [System.Security.SecurityCritical] set; }
public System.Windows.Window Owner { get; set; }
[<get: System.Security.SecurityCritical>]
[<set: System.Security.SecurityCritical>]
member this.Owner : System.Windows.Window with get, set
member this.Owner : System.Windows.Window with get, set
Public Property Owner As Window
屬性值
- 屬性
例外狀況
範例
下列範例示範如何建立擁有者/擁有的關聯性。
// Create a window and make this window its owner
Window ownedWindow = new Window();
ownedWindow.Owner = this;
ownedWindow.Show();
' Create a window and make this window its owner
Dim ownedWindow As New Window()
ownedWindow.Owner = Me
ownedWindow.Show()
備註
當父視窗透過呼叫 ShowDialog開啟子視窗時,父子視窗之間會建立隱含的關係。 此關聯性會強制執行某些行為,包括最小化、最大化和還原。
然而,當父視窗 Show呼叫 建立子視窗時,子視窗與父視窗並無關聯。 這表示:
子視窗沒有父窗口的參考。
子窗口的行為與父窗口的行為無關;任一個視窗可以涵蓋另一個視窗,或盡可能最小化、最大化和還原彼此。
允許你建立子視窗與父視窗之間的關係,支持 Window 所有權的概念。 當 Owner 一個視窗(擁有視窗)的屬性與另一個視窗(擁有者視窗)的參考設定時,所有權即被確立。
建立此關聯性之後,就會顯示下列行為:
如果擁有者視窗最小化,其所有擁有的視窗也會最小化。
如果擁有的視窗最小化,則其擁有者不會最小化。
如果擁有者視窗最大化,則會還原擁有者視窗和其擁有的視窗。
擁有者視窗永遠無法涵蓋擁有的視窗。
擁有且未被開啟 ShowDialog 的視窗則不是模態。 使用者仍然可以與擁有者窗口互動。
如果您關閉擁有者視窗,其擁有的視窗也會關閉。
當你呼叫 ShowDialog開啟子視窗時,也應該設定 Owner 該子視窗的屬性。 如果您未這麼做,則使用者將無法按下任務欄按鈕來還原子視窗和父視窗。 相反地,按下任務欄按鈕會產生視窗清單,包括子視窗和父視窗,以供他們選取;只會還原選取的視窗。
重要
你也應該將屬性設定 Owner 在透過呼叫 ShowDialog 開啟的視窗上,以確保擁有的視窗行為正確。
注意
當視窗載入在瀏覽器中時,您無法設定或取得這個屬性。