Open棟梁Project - マイクロソフト系技術情報 Wiki
...工事中...
XAMLについて。
参考
WPFは、.NET Framework 3.0で新しく提供され、Windows Vistaで全面的に採用された、リッチでインタラクティブなUIアプリケーションを開発・実行するためのUIサブシステム(クラス ライブラリ・UIコントロールのセットを含むランタイム・フレームワーク)。Windows VistaのUIサブシステムにはWPFが全面的に採用されており、今後のWindowsのUIアプリケーション開発の標準技術として利用できる。
WPF / Silverlightは、高速なグラフィックスではなく、
を実現するUIサブシステムであるため、Direct3D、DirectShow?、Media Foundationなどを使用して開発する3Dゲームや高品質なビデオ再生アプリの開発には向かないが、業務アプリケーション開発に必要な標準コントロールを備えており、従来の業務アプリケーションにリッチでインタラクティブな効果を追加することも可能である。
WPF / Silverlight は、Visual Studio 2008以降や、Expression Blendを使用して開発が可能。Expression Blendはデザイナ向けツールであり、VSに無い以下の機能を有している。
WPF / Silverlightでは、P層のUI部分を(HTMLのようなXMLベースのマークアップ言語である)XAMLを使用して記述し、イベントなどのプログラム部分はC#、VBを使用して開発することができる(Sliverlight 1.0はJavaScriptのみ対応)。また、XAMLは、XMLをベースとしており各要素からツリー構造のCLRオブジェクトをインスタンス化できる。このため、XAMLは、「ツリー構造のCLRオブジェクトをインスタンス化するためのマークアップ言語」と説明することも可能である 。XAMLによるCLRオブジェクト生成の例は、以下を参考にできる。
WPF / Silverlightアプリケーションの開発には以下のような特徴がある。
プログラム部分は、VB・C#を使用して実装できる。
UI部分にXAML、プログラム部分にCLR言語と、UI・プログラム部分を分離して記述・実装できるので、Webアプリケーションと同様に画面デザイン(画面モックアップ開発)とプログラム開発の分業が可能である。例えば、UI開発ツールに特化したExpression Blendで、VSソリューション(プロジェクト)ファイルをそのまま開き、XAMLを直接作成・編集することもできる。
WPFにおける分離コードを実現するためには、従来のWindowsフォームや、ASP.NETアプリケーション(Webフォーム)と同様に、分離クラス(コードビハインド)と、.NET Framework 2.0からサポートされたパーシャル クラスが使用される。XAMLファイルから分離クラス(コードビハインド)ファイルを関連付けるためには、XAML上で「x:Class」、「x:Subclass」、「x:ClassModifier?」などのディレクティブを定義する。なお、「x:Code」ディレクティブを定義すればXAML上にインラインでコードを実装することもできる。また、分離クラス(コードビハインド)ファイルから、XAMLファイルで生成したCLRオブジェクトにアクセスするには、「x:Name」ディレクティブ、または、Name属性を付与する必要がある。
これらのディレクティブについては、「ディレクティブ」を参照のこと。
項番 | 略語 | 正式名称 |
1 | UI | User Interface |
2 | D&D | Drag and Drop |
3 | GDI | Graphics Device Interface |
4 | GPU | Graphics Processing Unit |
5 | JS | JavaScript |
6 | Ajax | Asynchronous JavaScript + XML |
7 | JSON | JavaScript Object Notation |
8 | REST | Representational State Transfer |
9 | POX | Plain Old XML |
10 | SEO | Search Engine Optimization |
11 | VS | Visual Studio |
12 | VB | Visual Basic |
13 | IE | Internet Explorer |
14 | WMV | Windows Media Video |
15 | WMA | Windows Media Audio |
16 | CLR | Common Language Runtime |
17 | DLR | Dynamic Language Runtime |
18 | CAS | Code Access Security |
19 | RCW | Runtime Callable Wrapper |
20 | WPF | Windows Presentation Foundation |
21 | WPF/E | Windows Presentation Foundation / Everywhere |
22 | XAML | eXtensible Application Markup Language |
23 | BAML | Binary Application Markup Language |
24 | XBAP | XAML Base Application |
25 | MVVM | Model - View - View Model |