前回の記事では、XMLの文法について説明しました。
今回は、XMLの文法を踏まえた上で、XAMLの文法を理解していきます。
まずは CheckBoxをXAMLで記述する例を見てみましょう(リスト1)。
リスト1
<CheckBox HorizontalAlignment="Center" Margin="10,10,0,0" VerticalAlignment="Top" Click="CheckBox_Click">ストアアプリ</CheckBox>
要素
リスト1で要素を表す部分は CheckBox です。XAMLで要素のCheckBoxを記述すると、は(C#やVBで)クラスのインスタンスとして表されます。
よって要素はクラスに対応しています。
要素はクラスだけではなくプロパティを表すものもあります。
属性
リスト1には、HorizontalAlignment, Margin, VerticalAlignment, Click の属性があります。
Windowsアプリケーションを作成したことがある方ならわかるかもしれませんが、HorizontalAlignmentは水平方向の文字位置、Marginは余白、VeriticalAlignmentは縦方向の文字位置を表しており、これらはプロパティです。
また、Click属性はClickイベントと結びつけられています。
このように、属性はプロパティとイベントと紐付きます。
コンテント
コンテントとはタグとタグの間に記述される項目です。
リスト1のコンテント部分は<CheckBox>と</CheckBox>の間にある「ストアアプリ」という文字列です。
ComboBoxを使用される場合は、アイテムとして文字列以外にチェックボックスを入れたりボタンを入れることも可能です。
このようにコンテントはプロパティ(CheckBoxの場合は「ストアアプリ」という文字列)と紐付いていたり、オブジェクト要素と紐付いたりします。
名前空間
XAMLもC#やVB.NETのように名前空間を表すことができます。
MainPage.xamlファイルを開いてみましょう。
以下のようなコードになっているかと思います。
<Page x:Class="Step6.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:Step6" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"> <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> </Grid> </Page>
2行目の
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
は xmlns という属性です。この属性は名前空間を表す属性で、
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” と書くことにより、ストアアプリ開発に必要な複数の名前空間が読み込まれます。
このほかにも xmlns:x, xmlns:d, xmlns:mcなどがありますが、以下のような意味があります。
- xmlns:x x名前空間:xamlの言語機能
- xmlns:d d名前空間:Visual StudioやBlendで使用する機能
- xmlns:mc mc名前空間:実行時に不要な機能を無視する機能
- mc:Ignored=”d” 上記xmlns:d をアプリ実行時に無視する
すべてを理解する必要はありません。
名前空間にはこのようなものがあるんだな、くらいに認識しておきましょう。
コメント