Подпишись на наш Twitter

Быть в курсе появления новых статей!

В разговоре с другими разработчиками кажется, что они слишком боятся, что создание AppBar в Windows 8 какое-то трудное и сложное. Ничто не может быть так далеко от истины, создание AppBar довольно просто.

Для иллюстрации этого я создал приложения с простым AppBar и добавил ToggleSwitch для переключения атрибута IsSticky. Значение IsSticky по умолчанию установлено в состояние отключено вы можете освободить AppBar кликнув в любом месте приложения за пределами AppBar. Чтобы установить значение IsSticky в true, вы должны сделать те же жесты для получения AppBar.

Первым шагом определим AppBar. Я хочу расположить AppBar снизу моей страницы, поэтому я определяю внутри Page.BottomAppBar. Внутри AppBar я добавил grid и сделал в нем две одинаковые колонки. Левая будет содержать кнопки специфичные для приложения, а правая содержит более общие кнопки.


  
      
          
              
              
          
          
              

Ключевые моменты для запоминания это то, что каждая кнопка имеет событие Click (все указывают на один обработчик события в нашем случае), и стиль. Определение стиля находится в общей папке в файле StandardStyles.xaml. Там определяются глифы для кнопок, но конечно вы вольны определить свои стили/глифы.

Я добавил Tag для каждой кнопки, и когда возникает событие нажатия, я определяю какой текст показать. Ниже AppBar представлены элементы ToggleSwitch и TextBlock, которые я буду использовать для отображения сообщения пользователю.


  
      
      
      
  

Код очень простой, нам нужно только обработать событие нажатия кнопки и переключить ToggleSwitch.

private void ToggleSwitch_Toggled_1( 
object sender, RoutedEventArgs e ) { BottomAppBar1.IsSticky = xToggleSwitch1.IsOn; } private void AppBarButtonClick( object sender, RoutedEventArgs e ) { Button b = e.OriginalSource as Button; var t = b.Tag; string msg = t.ToString(); xMessage.Text = String.Format("You clicked {0} !", msg); }

Зачастую, как вы могли видеть, AppBar создается просто, а основная трудоемкость в логике обработчиков кнопок, а не в уровне представления.

Оригинал: Creating A Sticky AppBar in Windows 8




Дата публикации: 31.07.2012 12:00

Ярлыки: AppBar, WPF, WinRT, Windows 8