次の方法で共有


アプリケーション開発

Windows Presentation Foundation (WPF) は、次のような種類のアプリケーションやサービスを開発するために使用できるプレゼンテーション フレームワークです。

  • スタンドアロン アプリケーション (クライアント コンピューターにインストールし、そこから実行できる実行可能アセンブリとしてビルドされた従来スタイルの Windows アプリケーション)。

  • XAML browser applications (XBAPs) (Microsoft Internet Explorer や Mozilla Firefox などの Web ブラウザーによってホストされ、実行可能アセンブリとしてビルドされた移動可能ページで構成されるアプリケーション)。

  • カスタム コントロール ライブラリ (再利用可能なコントロールを含む非実行可能アセンブリ)。

  • クラス ライブラリ (再利用可能なクラスを含む非実行可能アセンブリ)。

メモメモ

Windows サービスで WPF 型を使用することは避けることを強くお勧めします。Windows サービスでこれらの機能を使用すると、期待どおりの動作が得られない場合があります。

このような一連のアプリケーションをビルドするために、WPF は多数のサービスを実装しています。 このトピックでは、これらのサービスの概要を説明し、詳細情報へのリンクを示します。

このトピックは、次のセクションで構成されています。

  • アプリケーション管理
  • WPF アプリケーションのリソース ファイル、コンテンツ ファイル、およびデータ ファイル
  • ウィンドウとダイアログ ボックス
  • ナビゲーション
  • ホスト
  • ビルドと配置
  • アプリケーションのパフォーマンス
  • 関連トピック

アプリケーション管理

実行可能 WPF アプリケーションは、一般に次のコアな機能セットを必要とします。

  • 共通アプリケーション インフラストラクチャを作成し、これを管理する (エントリ ポイント メソッドと、システム メッセージおよび入力メッセージを受け取るための Windows メッセージ ループの作成を含む)。

  • アプリケーションの有効期間を追跡し、これと相互作用する。

  • コマンド ライン パラメーターを取得し、処理する。

  • アプリケーション スコープのプロパティと UI リソースを共有する。

  • 未処理の例外を検出し、これを処理する。

  • 終了コードを返す。

  • スタンドアロン アプリケーションのウィンドウを管理する。

  • XAML browser applications (XBAPs) や、ナビゲーション ウィンドウとフレームを持つスタンドアロン アプリケーションで、ナビゲーションを追跡する。

これらの機能は、Application クラスによって実装されます。このクラスをアプリケーションに追加するには、アプリケーション定義を使用します。

詳細については、「アプリケーション管理の概要」を参照してください。

WPF アプリケーションのリソース ファイル、コンテンツ ファイル、およびデータ ファイル

WPF は、埋め込みリソースを扱う Microsoft .NET Framework のコア サポートを拡張して、リソース、コンテンツ、データの 3 種類の非実行可能データ ファイルのサポートを追加します。詳細については、「WPF アプリケーションのリソース ファイル、コンテンツ ファイル、およびデータ ファイル」を参照してください。

WPF 非実行可能データ ファイル サポートの重要なコンポーネントは、一意の URI を使用してこれらのファイルを識別し、読み込む機能です。詳細については、「WPF におけるパッケージの URI」を参照してください。

ウィンドウとダイアログ ボックス

ユーザーは、ウィンドウをとおして WPF スタンドアロン アプリケーションとやり取りします。 ウィンドウの目的は、アプリケーションのコンテンツをホストし、コンテンツとやり取りするためにユーザーが利用できるアプリケーション機能を公開することです。 WPF では、ウィンドウは Window クラスにカプセル化されます。このクラスは、次の機能を備えています。

  • ウィンドウを作成し、表示する。

  • 所有者と所有先ウィンドウの関係を確立する。

  • ウィンドウの外観を構成する (サイズ、位置、アイコン、タイトル バーのテキスト、境界など)。

  • ウィザードの有効期間を追跡し、これと相互作用する。

詳細については、「WPF ウィンドウの概要」を参照してください。

Window は、ダイアログ ボックスと呼ばれる特別な種類のウィンドウを作成できます。 モーダル ダイアログ ボックスとモードレス ダイアログ ボックスの両方の種類のダイアログ ボックスを作成できます。

使いやすさ、再利用性の利点、およびアプリケーション全体の操作性の統一のために、WPF では、Windows のコモン ダイアログ ボックスから OpenFileDialogSaveFileDialog、および PrintDialog の 3 つを公開しています。

メッセージ ボックスは、重要な情報をテキストでユーザーに表示し、単純な [はい]、[いいえ]、[OK]、[キャンセル] の応答を求めるために使用する特別なダイアログ ボックスです。 メッセージ ボックスを作成して表示するには、MessageBox クラスを使用します。

詳細については、「ダイアログ ボックスの概要」を参照してください。

ナビゲーション

WPF は、ページ (Page) とハイパーリンク (Hyperlink) を使用する Web スタイルのナビゲーションをサポートしています。 ナビゲーションは、次のようなさまざまな方法で実装できます。

  • Web ブラウザーでホストされるスタンドアロンのページ。

  • Web ブラウザーでホストされる XBAP にコンパイルされるページ。

  • スタンドアロン アプリケーションにコンパイルされ、ナビゲーション ウィンドウ (NavigationWindow) によってホストされるページ。

  • フレーム (Frame) によってホストされるページ。フレームは、スタンドアロン ページか、XBAP またはスタンドアロン アプリケーションにコンパイルされたページにホストされることがあります。

ナビゲーションに役立つように、次の機能が WPF に実装されます。

  • アプリケーション内ナビゲーションをサポートするために FrameNavigationWindow、および XBAPs で使用される、ナビゲーション要求処理用の共有ナビゲーション エンジンである NavigationService

  • ナビゲーションを開始するために使用するナビゲーション メソッド。

  • ナビゲーションの有効期間を追跡し、これと相互作用するために使用するナビゲーション イベント。

  • 履歴を使用した前方や後方へのナビゲーションの記録。履歴の情報は、調べたり操作したりすることもできます。

詳細については、「ナビゲーションの概要」を参照してください。

WPF は、構造化ナビゲーションと呼ばれる特別な種類のナビゲーションもサポートしています。 構造化ナビゲーションは、呼び出し元関数との一貫性が保たれた、構造化されて予測の可能な形式でデータを返す 1 つ以上のページを呼び出すために使用できます。 この機能は PageFunction<T> クラスに依存します。このクラスの詳細については、「構造化ナビゲーションの概要」を参照してください。 また、PageFunction<T> は、複雑なナビゲーション トポロジの作成を簡略化するためにも役立ちます。詳細については、「ナビゲーション トポロジの概要」を参照してください。

ホスト

XBAPs は、Microsoft Internet Explorer または Firefox でホストできます。 ホストのモデルによって考慮事項や制約が異なります。詳細については、「WPF アプリケーションのホスト」を参照してください。

ビルドと配置

単純な WPF アプリケーションはコマンド ライン コンパイラを使用してコマンド プロンプトでビルドできますが、WPF と Microsoft Visual Studio が統合されることで、開発とビルドのプロセスを簡略化するための追加サポートを使用できます。 詳細については、「WPF アプリケーション (WPF) のビルド」を参照してください。

ビルドするアプリケーションの種類によって、選択する配置オプションが異なります。 詳細については、「WPF アプリケーションの配置 (WPF)」を参照してください。

アプリケーションのパフォーマンス

WPF 固有のパフォーマンスに関する考慮事項については、「WPF アプリケーションのパフォーマンスの最適化」を参照してください。

関連トピック

タイトル

説明

アプリケーション管理の概要

アプリケーションの有効期間、ウィンドウ、アプリケーション リソース、ナビゲーションの管理など、Application クラスの概要について説明します。

WPF アプリケーションのウィンドウ

Window クラスおよびダイアログ ボックスの使い方など、アプリケーション内のウィンドウ管理の詳細について説明します。

ナビゲーションの概要

アプリケーション内のページ間でのナビゲーション管理の概要について説明します。

WPF アドインの概要

.NET Framework アドイン モデルを使用して拡張可能な WPF アプリケーションを作成する方法について説明します。

WPF アプリケーションのホスト

XAML browser applications (XBAPs) の概要について説明します。

WPF アプリケーションのビルドと配置

WPF アプリケーションをビルドして配置する方法について説明します。

パフォーマンス

WPF アプリケーションのパフォーマンスの最適化に関するヒントを提供します。

WPF の概要

WPF の主な機能について説明します。

チュートリアル: WPF の概要

ページ ナビゲーション、レイアウト、コントロール、イメージ、スタイル、バインディングを使用する WPF アプリケーションの作成方法を示すチュートリアルです。