WPF(Windows Presentation Foundation)+XAML入門 前編
Vista時代のプログラミングモデル .NET Framework 3.0入門(1)
.NET FrameworkのGUI部分を司るコンポーネントであるWPF(Windows Presentation Foundation)について、実際に触れながら解説していきます。第1回目はWPF、XAMLの概要とインストール方法について説明します。
.NET Framework 3.0とは
Windows Vistaがいよいよ発売となりましたが、Vistaで追加されたさまざまな機能の土台となっているのが.NET Framework 3.0です。.NET Framework 3.0(旧称 WinFX)は、.NET時代のOSが提供する新たなAPIセットで、以前のWin32 APIのような関数指向のモデルではなく、オブジェクト指向の.NETライブラリとして提供されます。
.NET Framework 3.0の実体は、.NET Framework 2.0をベースとし、それにWPF(Windows Presentation Foundation)、WCF(Windows Communication Foundation)、WF(Windows Workflow Foundation)、WCS(Windows CardSpace)を追加したものとなっています。

それぞれのコンポーネントは、次のような機能を持っています。
| コンポーネント名 | 略称 | 機能 |
| Windows Presentation Foundation | WPF | 3DグラフィックをサポートしたGUIコンポーネント |
| Windows Communication Foundation | WCF | さまざまな通信方式を統一的に扱うための通信コンポーネント |
| Windows Workflow Foundation | WF | Windows向けの共通ワークフローコンポーネント |
| Windows CardSpace | WCS | ユーザーのデジタルIDを統一的に管理するためのコンポーネント |
.NET Framework 3.0はWindows Vistaにプリインストールされていますが、.NET Framework 3.0自体はVista専用ではなく、Windows XP Service Pack 2、および、Windows Server 2003 Service Pack 1にもインストールすることができるので、現状の環境でも開発/テストすることができます。
既に.NET Framework 3.0は正式版がリリースされており、WPF、WCF、WFを使用したアプリケーションを開発するためのVisual Studio 2005 Extensionsがリリースされています。ただし、WFをサポートするVisual Studio 2005 Extensions for WFは正式版ですが、WPF、WCFをサポートするVisual Studio 2005 Extensions for WCF、WPFは英語のベータ版のみがリリースされています。
このシリーズではWPF、WCF、WFについて、Visual Studio 2005 Extensionsを用いたプログラミングを紹介していきます。シリーズ第1回となる本稿では、WPFの概要と、.NET Frameworkを用いた開発環境の設定について説明します。
対象読者
C#でプログラミングを行ったことがある方を対象としています。
WPFの特徴(歴史的な経緯)
WPF(コードネーム:Avalon)は.NET FrameworkのGUI部分を司るコンポーネントです。
これまでWindowsのGUI機能を提供してきたGDIは、2DをベースとしたGUIのみをサポートしていたため、3Dを用いたGUIを実現するには、別コンポーネントであるDirectXを使用する必要がありました。DirectXを使ったプログラミングは通常の2Dプログラミングに比べて敷居が高いため、多くのコンピュータに強力な3D性能を持つGPUが搭載されているにもかかわらず、Windowsの標準UIを含め、ほとんどのアプリケーションでは3Dを用いたGUIが使用されていませんでした。
そのため、2Dと3Dを統合した新しいGUIコンポーネントが必要とされており、Windows Vistaの登場に合わせて準備されたのがWPFです。WPFは2Dと3Dの両方を扱うことができ、また関数ベースのAPIであるGDI・COMインターフェイスに依存していたDirectXとは異なり、.NETベースのライブラリとなっています。Windows Vistaのエクスプローラでは3D機能を用いたさまざまな画面効果がアピールされていますが、こうした機能はWPFで実現されています。
この記事は参考になりましたか?
- Vista時代のプログラミングモデル .NET Framework 3.0入門連載記事一覧
- この記事の著者
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
WINGSプロジェクト 土井 毅(ドイ ツヨシ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
