画面に貼り付ける「コントロール(control、操作子)」はWindowsストア アプリの開発における大きな「壁」です。特に、Grid、StackPanel、FlipView、GridView、ListViewといったレイアウト用のコントロールは、これまでWindowsアプリケーションを作って着た開発者には難しいもの。一つひとつ、短いサンプルで使い方を理解しましょう!

 今回はVisual Basicを使って解説をします。日経ソフトウエアのWebサイトでは、Visual BasicとC#のコードをダウンロードできます。

1●Buttonコントロール:押してイベントを発生させる

 GUI(Graphical User Interface)部品の中で最も重要なのがButton(ボタン)です。ボタンはユーザーにボタン名を表示し、ユーザーがそれを押したら処理を開始します。まずは、ボタンを使ったWindowsストア アプリを作ってみましょう。

 Visual Studio 2012*1を起動したら、メニューで「ファイル」→「新しいプロジェクト」を選び、「新しいプロジェクト」画面を出します。左側のツリーで「テンプレート」→「Visual Basic」を選び、中央の一覧にある「新しいアプリケーション(XAML)Visual Basic」を選び、下の名前欄にプロジェクト名を入力します。筆者はここではプロジェクト名を「button01」としました。右下の「OK」ボタンを押すとプロジェクトが作られます。

リスト1●「日経ソフトウエアは…」と書かれたボタン「Button1」を追加する(MainPage.xaml)
リスト1●「日経ソフトウエアは…」と書かれたボタン「Button1」を追加する(MainPage.xaml)
[画像のクリックで拡大表示]
リスト2●リスト1と組み合わせるVisual Basicのコード(MainPage.xaml.vb)
リスト2●リスト1と組み合わせるVisual Basicのコード(MainPage.xaml.vb)
[画像のクリックで拡大表示]

 右上の「ソリューション エクスプローラー」を使ってMainPage.xamlを開きます。「XAML」タブをクリックしてXAML(Extensible Application Markup Language)のソースコードを直接編集します*2リスト1の(1)の行を追加します*3。「日経ソフトウエアは…」と書かれたボタンを追加し、その名前を「Button1」にする、というコードです。

 次に、ユーザーがボタンを押した時の処理を記述します。(1)の行をクリックしてカーソルを置き、右下の「プロパティ」ウィンドウを見ると、Button1が出ているでしょう。名前の右にある稲妻の形をしたアイコン「選択した要素のイベント ハンドラー」をクリックし、Clickイベントの右の空白をダブルクリックします。すると、MainPage.xaml.vbが開き、Button1_Clickサブプロシジャの中身を編集できる状態になります。

 そこにリスト2(2)のコードを入力します。ShowMessageというサブプロシジャは(3)のように記述します。これで実行すると、画面に図2のボタンが現れ、それを押すと図3のようにメッセージが表示されます。

図2●リスト1とリスト2のプログラムを実行すると、画面にこのボタンが現れる
図2●リスト1とリスト2のプログラムを実行すると、画面にこのボタンが現れる
図3●図2のボタンを押すと現れるメッセージダイアログ
図3●図2のボタンを押すと現れるメッセージダイアログ
[画像のクリックで拡大表示]

 以前のVisual Basicではツールボックスからフォームにボタンをドラッグ&ドロップしていたのに、今度はXAMLのコードを編集しなければいけないのか…と思った方もいることでしょう。Visual Studio 2012のWindowsストアアプリ開発でも、ツールボックスからのドラッグ&ドロップはできます。ただ、それをするとXAMLのコードがたくさん記述され、読んだり編集したりするのが大変になります。XAMLを直接編集した方が、見通しのよいコードを維持しやすいと思います。