カスタムユーザーのWebコントロールのラベルテキストを次のように設定しようとしています
Email em = new Email(); //Email is the class of the custom user web control
em.setEmail(email);
Panel2.Controls.Add(em);
コントロールのsetEmail()
関数は、ラベルの値を次のように設定しlblEmail
ます
public void setEmail(string recEmail)
{
lblEmail.Text = recEmail;
}
しかし、次のエラーが発生します。
デバッグしているときにrecEmail
、提供された値を取得していることがわかりました。ただし、に割り当てないでlblEmail.Text
ください。
コントロール登録の問題が原因かもしれないと思ったので、として登録しました
<%@ Register Src="~/Email.ascx" tagname="Email" TagPrefix="uc1" %>
また、setEmail()関数で次のように値を設定してみました。
public void setEmail(string recEmail)
{
string a=recEmail;
lblEmail.Text = a;
}
デバッグ時に、これはa
の値を取得しているが、にrecEmail
割り当てていないことを示しましたlblEmail.Text
コード全体をアップロードすることはできませんので、次の点に注意してください。
- Panel2という名前のパネルは、電子メール制御がパネルに追加された後に条件付きで更新されるUpdatePanelにあります。
- Email.ascxファイルは、それを呼び出しているファイルの親フォルダーにあります。Email.ascxがAフォルダーにある場合、それを呼び出すファイルはA/Bフォルダーにあることを意味します。しかし、私はそうは思わない。あなたに状況についての完全な情報を与えるためにちょうど言及されました。
これを解決するために何をすべきか教えてください。