2011-02-08 5 views

答えて

0

この目的でMEFを使用して終了しました。

1

任意のSilverlightプロジェクトは、DLLまでコンパイルし、SilverlightのDLLは他のSilverlightを読み込むことができますDLL。つまり、本質的には、別のSilverlightアプリケーションをライブラリとして扱うことで参照できます。これにより、クラスのインスタンスを作成し、それらのクラスのメソッドを呼び出すことができます。これはではなく、と同じですが、それはかなり近いですし、おそらくあなたがする必要があることをすることができます。

注意しなければならないことは、Application.Currentが1つしかないことです。そのため、読み込まれるApp.xamlは最初のものだけです。含まれているアプリケーションのapp.xamlにリソースが定義されている場合は、そのアプリケーションのapp.xaml内のリソースを再定義する必要があります。

+0

私はそれについて考えていましたが、.xapファイルを動的にロードし、いくつかのパラメータをコントロールに渡すこともできますが、動的にロードされる.xapからのコントロールをメインアプリケーションと通信できますか?それが可能かどうかは分かりますか? – Masha

0

Kenさんのように、アプリケーション内のアプリケーションの純粋な意味では不可能です。

私の質問はなぜですか?おそらくそれはあなたが何をしているのかを理解し、あなたがしたいことをやる方法をより良く答えるのに役立つかもしれません。

同じクライアントで実行されている2つのSilverlightアプリ間で通信できるため、 System.Windows.Messagingの下にある "LocalMessageSender"と "LocalMessageReceiver"を探します。

+0

なぜ良い質問であり、私は自分自身を100%理解しているのか分からないのですが、私は研究を依頼していました。私はSystem.Windows.Messagingを見つけましたが、とにかく参考に感謝します!私が理解するところでは、デスクトップのようなものを動かすことになっています。メインアプリケーションがあり、いくつかのメニューをクリックすると追加のアプリケーションが読み込まれるはずです。 – Masha