Поделиться через


Window.Owner Свойство

Определение

Возвращает или задает Window, принадлежащий этому Window.

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

Значение свойства

Объект Window, представляющий владельца этого Window.

Атрибуты

Исключения

Окно пытается принадлежать себе

-или-

Две окна пытаются принадлежать друг другу.

Свойство Owner установлено в видимом окне с помощью ShowDialog()

-или-

Свойство Owner установлено с окном, которое ранее не отображалось.

Примеры

В следующем примере показано, как установить связь владельца или владельца.

// 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, не модальные. Пользователь по-прежнему может взаимодействовать с окном владельца.

  • При закрытии окна владельца также закрываются собственные окна.

  • Если окно владельца было открыто его окном владельца с помощью Show, а окно владельца закрыто, событие Closing собственного окна не вызывается.

При открытии дочернего окна путем вызова ShowDialogнеобходимо также задать свойство Owner дочернего окна. Если вы этого не сделали, пользователи не смогут восстановить как дочернее окно, так и родительское окно, нажав кнопку панели задач. Вместо этого нажатие кнопки панели задач даст список окон, включая дочернее и родительское окно, для выбора; Восстанавливается только выбранное окно.

Важный

Также следует задать свойство Owner в окне, которое открывается путем вызова ShowDialog, чтобы обеспечить правильное поведение в собственном окне.

Заметка

Невозможно задать или получить это свойство, если окно размещено в браузере.

Применяется к

См. также раздел