Новое окно в приложении Silverlight вне браузера - PullRequest
1 голос
/ 20 июня 2011

В приложении Silverlight, которое не запускается в браузере, возможно ли создать новое окно верхнего уровня? Или хотя бы дочернее окно?

Я нашел какое-то решение, используя класс ChildWindow, но, хотя мой проект настроен для Silverlight 4, этот класс не может быть найден.

У меня есть UserControl (файл XAML), который я хочу показать в новом окне. К сожалению, использование элемента управления на вкладке не является приемлемым вариантом, поскольку пользователь должен иметь возможность расположить окна, чтобы видеть более одного одновременно.

Есть предложения?

1 Ответ

2 голосов
/ 20 июня 2011

ChildWindow является частью SDK, вам нужно добавить System.Windows.Controls.dll для доступа к типу ChildWindow.

Я не уверен, что вы можете заставить ChildWindow делатьчто вы ожидаетеChildWindow предназначен для представления окна в модальной манере.Однако это модальное поведение действительно является функцией шаблона ChildWindow.Можно повторно шаблон для удаления модального поведения.Однако я никогда не пытался манипулировать несколькими дочерними окнами.Вы можете попробовать, большой вопрос будет в том, что произойдет, если вы закроете дочерние окна в другом порядке, в котором они были созданы?

Чтобы использовать ChildWindow для представления UserControl этогоВероятно, вам лучше всего получить ChildWindow вместо UserControl.Возможно, вы даже обнаружите, что в конечном итоге будет лучше создать базовый класс между вашим конкретным Xaml и ChildWindow, в который вы поместите код, общий для всех ваших окон.

Возможно, стоит отметить, что Silverlight 5 будет поддерживатьнесколько окон.

...