ATF Wpf App Sample_j - kaisu1986/ATF GitHub Wiki

Table of Contents

説明

WpfApp は、基本的な WPF サンプルのアプリケーションです。 MEF を使用して、ATF コンポーネントを備えた WPF アプリケーションを作成する方法を示します。 これはエディタのようなアプリケーションの開始点ですが、WpfApp では編集機能を提供していません。

WpfApp サンプルのコードの多くは WinFormsApp サンプルと共通であるため、この 2 つが提供する機能のセットは似ています。 実際、この 2 つのアプリケーションは 2、3 のファイルが異なるだけで、アプリケーションコードの大部分は共通です。 このため、ATF アプリケーションを開発して WinForms と WPF 間で容易に変換できます。

このサンプルの内容は、WinForms and WPF Apps Programming Discussion を参照してください。

WpfApp が示す ATF の機能

  • MEF (Managed Extensibility Framework) を使用して、アプリケーションをまとめる。
  • CommandService、SettingsService、ControlHostService、および WindowsLayoutService を含むアプリケーションシェルフレームワークの使用。
  • SchemaLoader を使用したスキーマのロード。

WpfApp の実行

  1. ATF\Samples\WpfApp\bin\Release にある WpfApp.exe をダブルクリックします。
  2. アプリケーションデータのリストボックスを含むダイアログが表示されます。

メニューおよびツールバーオプション

  • [File] (ファイル): [New] (.gad ファイルの新規作成)、[Open] (既存の .gad ファイルを開く)、[Save] (保存)、[Save] (名前を付けて保存)、[Save] (すべて保存)、[Close] (閉じる) および [Exit] (終了)。
  • [Edit] (編集)
    • [Preferences] (設定): 新規ドキュメントの自動読み込みなど、アプリケーションの詳細を設定します。
  • [Load]: このウィンドウを使用して、現在の WpfApp のアプリケーション設定を保存するか、またはファイルからアプリケーション設定を読み込みます。
  • [Window] (ウィンドウ):
    • [Layouts] (レイアウト):
      • [Save] (名前を付けてレイアウトを保存): 現在のレイアウトに名前を付けて保存します。
      • [Manage] (レイアウトの管理): レイアウトのリストを表示し、リストを管理します。
    • チェックボックス付きのメニューアイテムのリスト: コントロールをクリックするとチェックマークが付き、アクティブ化します。
ツールバーでは、[File] コマンドの保存、名前を付けて保存、すべて保存、新規作成、および開くのボタンを選択的に使用できます。

WpfApp の使用法

WpfApp はイベント、アニメーション、その他の型を含むスキーマを提供します。また、スキーマをロードする機能もあります。 WpfApp には、DomNode に関連したイベントおよびリソースを処理するコードもありますが、 アプリケーションデータの作成および変更のための編集機能はありません。

WpfApp のモジュール

モジュールには次のような機能があります。

  • Program.cs: Main プログラムを含みます。 このプログラムが、使用されている ATF クラスおよび内部クラスをリストした TypeCatalog を作成します。
  • Editor.cs: IDocumentClient を実装して、ドキュメントを開き、表示し、保存し、閉じることができるようにします。
  • SchemaLoader.cs: イベントスキーマをロードし、データ拡張を DOM 型に登録し、型に表示情報と PropertyDescriptors の注釈を付けます。
  • EventContext.cs および WinGuiCommonDataContext.cs: データのコンテキストを提供します。
⚠️ **GitHub.com Fallback** ⚠️