オンデマンドでの画面を表示するWPFのラッパーアプリケーションを作成するためのベストプラクティス
-
19-09-2019 - |
質問
のコンテキスト:の 私は、さまざまな「画面」がたくさん含まれていますWPFアプリケーションを開発しています。各画面には、そのターンにすべての視覚的な要素が含まれている含まれています。いくつかの要素は、トリガイベント(例えば、チェックボックス)、画面は等、個々のリソースを持っています。
主な用途は、これらの画面の周りに「ラッパー」である:これは、1つの画面を表示する(DockPanelに)メニューバー、ツールバー、ステータスバーと同様を含み、空間。メニューバーにより、ユーザは、彼が表示したい画面を選択することができます。
の目標:の 私は、動的にロード&表示する&(イベント)メインアプリケーションのスペース内の1つの画面を扱います。私はすべての異なる画面内のすべての「ラッパー」のものをコピー&ペーストする必要はありません。そして、私は多くの複雑な画面を持っていたよう。(300の周りに - 幸いにも自動生成)、私は唯一の要求に応じて、アプリケーションの開始時にそれらのすべてをロードする必要はありません。
質問:の
あなたは
?これを実現するための最良の方法として、何をお勧めします
私は物事のどのような種類を使用する必要がありますし、調査:画面のページやウィンドウまたはユーザーコントロールを?このイベントの処理に影響を与えますか?
解決
ロビーには、ジョシュ・スミスのWPF MVVMの記事からワークスペースの概念を借りることができます。何を考え、1つのホスティングウィンドウ(ラッパー)を持っており、このウィンドウにワークスペースをロードしています。あなたは、ワークスペースを閉じて、必要に応じて新しいものをロードし、メインウィンドウに一つだけのオープンを維持することができます。
リンク: http://msdn.microsoft.com/en-us/magazine/dd419663。 ASPXする
他のヒント
あなたは、様々なページを含むようにフレームを使用することができます。