画面の下部に表示されるメニューバーを表示します。WindowsPhoneではこれをアプリケーションバーと呼びます。
システムが提供するアイコンの場所は「C:\Program Files\Microsoft SDKs\Windows Phone\v7.1\Icons\dark」にある。追加したアイコンはそれぞれ、プロパティの設定から「ビルドアクション」をコンテンツに変更しないと適用されない。
<phone:PhoneApplicationPage x:Class="BaseApp.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768" FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeNormal}" Foreground="{StaticResource PhoneForegroundBrush}" SupportedOrientations="Portrait" Orientation="Portrait" shell:SystemTray.IsVisible="True"> <!--LayoutRoot は、すべてのページ コンテンツが配置されるルート グリッドです--> <Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--TitlePanel は、アプリケーション名とページ タイトルを格納します--> <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28"> <TextBlock x:Name="ApplicationTitle" Text="アプリケーションバーの表示" Style="{StaticResource PhoneTextNormalStyle}"/> </StackPanel> <!--ContentPanel - 追加コンテンツをここに入力します--> <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"></Grid> </Grid> </phone:PhoneApplicationPage>
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using Microsoft.Phone.Controls; using Microsoft.Phone.Shell; namespace BaseApp { public partial class MainPage : PhoneApplicationPage { ApplicationBar appBar = null; // コンストラクター public MainPage() { InitializeComponent(); // 初期化完了後に呼ばれるメソッドの登録。 Loaded += OnLoaded; } // 初期化完了後に呼ばれるメソッド。 void OnLoaded(object sender, RoutedEventArgs args) { // アプリケーションバーの生成。 ApplicationBar = new ApplicationBar(); ApplicationBar.IsMenuEnabled = true; ApplicationBar.IsVisible = true; ApplicationBar.Opacity = 1.0; // 追加ボタンの作成。 ApplicationBarIconButton addButton = new ApplicationBarIconButton( new Uri("/Images/appbar.add.rest.png", UriKind.Relative)); addButton.Text = "追加"; addButton.Click += new EventHandler(AddButton_Click); ApplicationBar.Buttons.Add(addButton); // 削除ボタンの作成。 ApplicationBarIconButton removeButton = new ApplicationBarIconButton( new Uri("/Images/appbar.delete.rest.png", UriKind.Relative)); removeButton.Text = "削除"; removeButton.Click += new EventHandler(RemoveButton_Click); ApplicationBar.Buttons.Add(removeButton); } //追加ボタンの処理 void AddButton_Click(object sender, EventArgs e) { // todo } //削除ボタンの処理 void RemoveButton_Click(object sender, EventArgs e) { // todo } } }