2011-08-08 44 views
0

現在、電子フォームを表す再利用可能なユーザーコントロールを持つASP Webプロジェクトがあります。 'フォーム'コントロールには、さまざまな種類の 'アイテム'ユーザーコントロールがあります。 'item'クラスを拡張する約12の異なる 'item'ユーザコントロールがあります。フォームとその項目はデータベースから取り込まれます。これは正常に動作し、コンパイルします。ASP C#ユーザーコントロール循環参照

私がしなければならないことは、アイテムタイプの1つに別のフォームアイテムを埋め込み、埋め込みフォームを作成できるようにすることです。 「 - >項目1A、項目1B、項目1CをForm1」レイアウトと、それは円形にし、それは

Form1 -> 
    Item1A 
    Item 1B-Form2 -> 
     Item2A 
     Item2B 
    Item1C 

ように見えることができるようにだからインスタンスUserControl1を含むであろうUserControl2をのインスタンスを含んでいてもよい、本質的に電流を取りますUserControl1のインスタンス

ASPは私に次のエラー "[UserControl2] .ascxに循環参照があります!"を与えています。

この構造も可能ですか?

多くのありがとう

答えて

1

コントロールをパスで動的に追加しようとしましたか?例えば

WebUserControl1 uc = 
    (WebUserControl1) Page.LoadControl("WebUserControl1.ascx"); 
PlaceHolder1.Controls.Add(uc); 
+0

こんにちはアントンは、ご提案をいただき、ありがとうございます。私はすでにあなたが提案した方法を使ってコントロールを動的にロードしているのではないかと心配しています。 コントロールに参照を追加しました <%@ Register Src = "Control1.ascx" TagName = "Form" TagPrefix = "frm"%> - 循環参照を引き起こしている行です。コードの背後にあるオブジェクトにアクセスできるようにするためには、このリファレンスを用意する必要があります。 – Simon