Классические элементы пользовательского интерфейса в Windows Presentation Foundation. Шамшев Ан. Б. - 64 стр.

UptoLike

Составители: 

63
// Показать окно, принадлежащее окну-владельцу.
winTool.Show();
Окна, имеющее окно-владельца, всегда отображаются как немодаль-
ные. Чтобы удалить такое окно, нужно всего лишь установить для его
свойства Owner значение null. Следует отметить тот факт, что WPF не
включает системы для построения многодокументных приложений (Mul-
tiple Document Interface MDI). При необходимости в более сложной си-
стеме управления окнами, разработчику придется реализовывать ее само-
стоятельно.
Окно, имеющее владельца, может само владеть каким-нибудь дру-
гим окном, которое, в свою очередь, может владеть еще каким-нибудь ок-
ном и т.д. Единственным ограничением является то, что окно не может
владеть самим собой, а также то, что два окна не могут владеть друг дру-
гом.
5.6. Модель диалогового окна
Часто отображая окно как модальное, разработчик предлагает поль-
зователю сделать какой-нибудь выбор. Код, отображающий окно, дожида-
ется получения результата этого выбора и затем выполняет на его основа-
нии соответствующее действие. Такой дизайн называется моделью диало-
гового окна, а само отображаемое модальное окно диалоговым окном.
Такой дизайн можно легко корректировать путем создания в диалоговом
окне общедоступного свойства. Это свойство может устанавливаться, ко-
гда пользователь делает в диалоговом окне выбор. Далее диалоговое окно
может закрываться, а отображавший его код проверять установленное
для свойства значение и на его основании определять, какое действие
должно быть выполнено следующим.
Такая инфраструктура уже отчасти жестко закодирована в классе
Window. У каждого окна имеется свойство DialogResult, которое может
принимать значение true, false или null. Обычно значение true означает,
что пользователь выбрал продолжить операцию (например, щелкнул на
кнопке ОК). а значение false что он отменил операцию.