Привязка содержимого CommandBar UWP SplitView

В моем приложении у меня есть SplitView, и я устанавливаю содержимое как фрейм для каждой страницы. Каждая страница содержит собственную панель CommandBar. Это работает без проблем. Теперь я создаю VisualStates для мобильного просмотра. В нем я хочу скрыть PlitView в закрытом состоянии (inline). Но теперь мне нужен способ добавить только «HamburgerButton» (в моем случае RadioButton) вверху для открытия встроенного SplitView. Я тоже это сделал, но «HamburgerButton» перекрывает текст каждой страницы на CommandBar. Итак, какое решение является лучшим: создать только одну CommandBar на MainPage (где находится мой SplitView) и привязать контент или создать CommandBar для каждой страницы?

С наилучшими пожеланиями


person andy    schedule 10.05.2016    source источник
comment
Почему бы не поместить CommondBar внизу страницы?   -  person Sunteen Wu    schedule 11.05.2016
comment
На настольных компьютерах CommandBar находится вверху, а на мобильных - внизу. Но наверху есть и в мобильной версии CommandBar с заголовком страницы.   -  person andy    schedule 11.05.2016


Ответы (2)


Я думаю, что создание одной CommandBar в MainPage и привязка содержимого может потребовать дополнительной работы. Не забывайте, что вам может потребоваться привязать основные и дополнительные кнопки.

Если вы хотите использовать CommandBar на каждой странице и одно HamburgerMenu на MainPage, вы можете попробовать этот метод.

  1. Создайте отдельную верхнюю строку в сетке, которую будет занимать CommandBar.
  2. Горизонтально сложите прозрачный прямоугольник шириной, равной ширине вашего «HamburgerButton», вместе с CommandBar и поместите его в созданную выше строку.
  3. Создайте VisualStates для запуска на телефоне и установите видимость прямоугольника соответственно, чтобы сместить CommandBar вправо.

Ознакомьтесь с Template10 PageHeader Control (в частности, введите "VisualStateNarrow" и "Spacer"). Если вы не особо серьезно относитесь к разработке этого шаблонного кода, ознакомьтесь с Template10. Он имеет множество полезных элементов управления, разработанных сообществом. Прошу прощения, если вы уже знали об этом.

person Raamakrishnan A.    schedule 11.05.2016
comment
Спасибо, именно то, что я ищу, с прозрачным прямоугольником и VisualState, работает отлично! - person andy; 11.05.2016

Вы можете создать верхнюю панель страницы, а в MainPage использовать splitview.

person lindexi    schedule 11.05.2016
comment
И как мне добавить туда контент с других моих страниц CommandBars? - person andy; 11.05.2016
comment
Если вы используете верхнюю часть в MainPage и используете Frame в MainPage, вы можете изменить верхнюю часть, когда другие страницы будут отображаться. - person lindexi; 11.05.2016
comment
Я не знаю, что вам нужно, вы можете сказать, что вам следует кодировать. - person lindexi; 12.05.2016