2011-09-09 12 views
0

複数のプロジェクト間で再利用するために、ユーザーコントロールをアセンブリに格納する方法の例がありますか?異なるプロジェクトのユーザーコントロールアセンブリ?

私は私のUserControlで総会を作ったが、私はアセンブリを登録しようとしたとき、私は多くの問題がありました。最後に、私はエラー

おかげで非常に多く、「オブジェクト参照がオブジェクトのインスタンスに設定されていません」していたイベントにアクセスしようとしたときに働いていたけど。

+0

あなたは、イベントに関する情報のビットより多くを投稿することができますか?いくつかのスタックトレースは大歓迎です。 –

答えて

0

ユーザーコントロールは、多くの痛みなしにプロジェクト間で再利用することはできません。つまり、.ascxファイルは、アセンブリだけでなく、参照する各プロジェクトで使用できる必要があります。これにより、更新と展開が困難になります。可能ですが、環境によっては非常に困難です。

あなたの最善の策は、サーバーコントロールを使用して新しいアセンブリを作成することです。主な違いは、サーバーコントロールが100%コードであり、プロジェクト間で簡単に転送可能であることです。つまり、コンポジットコントロールをデザインサーフェイス上にドラッグアンドドロップするだけでコンポジットコントロールを作成することはできません。しかし、あなたはhtmlを完全にコントロールしていますが、アセンブリを参照するだけで別のプロジェクトにコントロールを追加することができます。カスタムサーバーコントロールを作成する方法のチュートリアルで

は、以下を参照してください。 http://msdn.microsoft.com/en-us/library/yhzc935f.aspx

0

あなたは(私はそれを使用する人を知っているので、それが存在することがわかっている)ユーティリティを見つけることができるされて@クリスもの以外の唯一の他の選択肢ことUCを含むプロジェクトを多くの子プロジェクトにマージします。基本的にはコードの複製ですが、コードベースを変更する必要があります。

0

おかげで非常に多くの人は:別のオプションは、ここで説明したように、カスタムサーバーコントロールにユーザーコントロールを変換することです。私は、そうでなければ、私が持っている、基本的に我々は、各アプリケーション内の別のコピーを作成する必要があることを言ったにも私はMSDN http://msdn.microsoft.com/en-us/library/aa651710%28VS.71%29.aspxで、この記事を見つけた、私はこれがあまりにも複雑になっている原因となり、すべての私のプロジェクトにコードを対処維持するつもりだと思います「Webカスタムコントロール」を使用することをお勧めします。私の考えは、それらのユーザーコントロールを再利用し、書き直さないことでした。今私は私の上司を探して、この仕事を私に与えるために彼を殺さなければならないと私はこの問題で3日間無駄にする! ;) 私の質問を編集してくれたChrisに非常に感謝しています。時には英語がひどいです。

関連する問題