2011-02-09 12 views
0

Prismアプリケーションのシェル領域にロードする必要がある単一のコントロールのビューを作成する最適な方法は何ですか?私はUserControlでコントロールをラップすることができます知っているが、私はそこに良い方法があるかもしれないと思う。単一のコントロールのビューを作成する方法は?

私はデモアプリケーションを使ってPrism 4を学習しています。各モジュールはナビゲーションボタンをシェルの領域のItemsControlに読み込みます。これらのナビゲーションボタンは、Outlookのメール、カレンダー、その他のボタンと同様に機能します。

モジュールのナビゲーションボタンを保持する各モジュールにビューを作成しています。ビューを作成する最も簡単な方法は、UserControlでラップすることです。私の質問はこれです:もっと良い方法がありますか?ご協力いただきありがとうございます。

答えて

0

グラフィカルコントロールが必要な場合は、何をしているのかを検討してください。すべてのボタンを同じように見せかける(コピー貼り付け)と思えば、メニュー登録サービスが必要です。

あなたはあなたのコンテナに登録するIMenuServiceのようなサービスを持っていて、モジュールが来てメニュー項目を登録することができます。モジュールのボタンを作成することができます。私はここで、このためのサンプル提供してきました: http://dl.getdropbox.com/u/376992/CAGMenus.zip

あなたの質問に、しかし、あなたかどうかについてであるように思わ地域に登録するユーザーコントロールでコントロールをラップする必要?それが質問であれば、私は答えがではなくだと考えています。

+0

私はUserControlラッパーを使用する必要がありますが、少なくともプレーンバニラクラスライブラリプロジェクトを使用する必要があります。上記の私の答えを参照してください。 –

0

私は、UserControlでコントロールを折り返してしまい、正常に動作しているようです。私はまだボタンをロードするためのより良い方法があるかどうかを見たいと思っているので、この質問を数日間開いておきます。

編集2011年2月22日:私は、ユーザーコントロールのラッパーなしでコントロールを使用してみました、と私は次のエラーを得た:

Library project file cannot specify ApplicationDefinition element.

私はユーザーコントロールにコントロールを包み、エラーが行ってきました離れて。

+0

あなたのシナリオが何であるかはまだ分かりませんが、私が推測しなければならないのは、これはWPFの特定の制限ではなく、選択したプロジェクトのタイプの制限だと思います。ユーザーコントロールライブラリには制限が少ないと思います。 –

関連する問題