Страница, рамка, окна навигации в С# WPF

  • Я хотел бы узнать разницу между страницей, фреймом, окнами навигации в С# wpf
  • Каков наилучший выбор для приложения Windows wpf?
  • в моем приложении, как сделать фиксированную часть (содержать главные кнопки) и заменяемую часть (показывать страницы) после нажатия кнопок в фиксированной части
  • Есть ли хорошие веб-сайты, которые предоставляют видеоуроки для С# wpf от начала до профессионала?

Благодарю вас

Ответ 1

A Page очень похож на пользовательский элемент управления, только тот, который отображается в пределах Frame, который снова является частью NavigationWindow. A NavigationWindow - это особый вид окна, который позволяет осуществлять навигацию по страницам и может отображать соответствующие элементы управления для навигации по страницам.

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

NavigationWindow уже содержит "фиксированную часть", которая может содержать элементы управления. Вы также можете использовать обычное окно, поместить в него Frame, а затем - через правильный макет - создать свои собственные "неподвижные части". Затем навигация будет использоваться для вызова методов навигации, предоставляемых Frame.

Ответ 2

Из ответа на этот вопрос:

Страницы

предназначены для использования в навигационных приложениях (обычно с кнопками "назад" и "вперед", например, Internet Explorer). Страницы должны размещаться в NavigationWindow или Frame

Лучший выбор зависит от того, какое приложение вы хотите создать. Является ли это мастером или приложением типа навигации или просто обычным приложением с одним окном (возможно, с вкладками)?

Я бы определенно рассмотрел возможность использования инфраструктуры MVVM, например Caliburn.Micro для создания приложения WPF. У этого есть некоторые действительно мощные механизмы для работы с Экранами, Проводниками и Компоновкой, а также поощрять вас отделить ваше приложение с использованием шаблона MVVM. Автор Caliburn.Micro Роб Эйзенберг написал несколько руководств с подробным объяснением и использованием фреймворка под проектной документацией. Существует также много ресурсов вокруг interwebz, google it!:)

Я также могу рекомендовать Pluralsight Основы WPF и XAML и WPF Advanced Topics, они должны учитывать то, что стоит знать о WPF:)