私は興味深い問題を抱えています。
複数の UserControls をホストする WPF アプリケーションを作成する必要があります。(アプリケーションはまさにそれを行います - UserControls のドッキング機能を備えたコンテナーとして機能します)
アプリケーションは、別のホット スワップ可能なコンポーネントとして UserControls のデータ モデルもホストします。(コンポーネントを交換できるように、コンポーネントごとに内部キューを使用する予定です。)
これらのユーザー コントロールは、実行時にプラグ可能 (これは簡単です) で、再読み込み可能 (これは難しい/不可能のようです) でなければなりません。 MarshalByValue および marshalByRefObject について GUI の制限はありますか? ) アプリが起動している間に UI コンポーネントをホットスワップする場合と同様に、実行時に「リロード可能」です。
また、UserControl のコンテキスト メニューに、ホストからのいくつかの項目と、UserControl 自体からのいくつかの項目を含めたいと考えています。
また、ホストと UserControls の間でシームレスにフォーカス (フォーカス イベントの境界線の色などを変更) を制御するロジックもあります (ホストと UserControls 間のタブ移動)。
余談ですが、Excel などの ActiveX コンテナーと統合するために、UserControl を ActiveX 対応にすることも必要です。
これにより、UserControl を単独で実行する (単体テスト)、コンテナー内で実行する (シームレスなナビゲーション、コンテナーおよびその他の関連する UserControls との統合)、および ActiveX コンテナーと統合する ActiveX コントロールとして柔軟性が得られます。
それが可能かどうか、またこれをサポートするフレームワーク(MAF?)があるかどうかを知りたいです。例やドキュメントへのポインタが役立ちます。
前もって感謝します、
よろしく、ヴェン。