Различать окно, страницу и пользовательский элемент управления в WPF?

Я задавался вопросом, может ли кто-нибудь помочь мне. Я новичок в WPF и в настоящее время пишу настольное приложение, но я не могу понять, что использовать при перенаправлении кого-то в новый раздел приложения.

Мои варианты кажутся

Window
Page
UserControl

но я не понимаю, в чем разница между ними и когда я должен использовать каждый из них.

Может ли кто-нибудь объяснить мне различия и привести пример того, для каких ситуаций/приложений вы можете использовать каждый из них?


person Shivam Srivastava    schedule 29.11.2013    source источник
comment
Точно такой же вопрос: stackoverflow.com/questions/12206120/   -  person Shilpa Soni    schedule 21.06.2014
comment
См. также вопрос stackoverflow.com/questions/5025504/ за отличный ответ.   -  person bjorsig    schedule 31.08.2014


Ответы (1)


Я не уверен, что здесь есть правильный ответ, но позвольте мне попытаться помочь вам. Класс Window был создан, чтобы позволить вам иметь настоящее окно. Итак, если вам нужно открыть диалог, поместите его в Window. Как правило, у вас будет по крайней мере один Window для размещения основной формы.

Page был построен для использования с классом NavigationWindow. Это позволяет вам создавать Page классы, которые размечены, как и все остальное, но просто переходите к ним скрытно. Это хорошо, если у вас есть одностраничное приложение, в котором пользователи просто перемещаются между страницами (например, мастер).

UserControl — это способ размещения повторно используемой разметки. Они могут быть размещены внутри любого ContentControl. Их можно поменять местами из «панели содержимого», например, в главном окне, например в Outlook.

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

person Mike Perrenoud    schedule 29.11.2013