2011-06-27 24 views
0

私は動的にWebページに追加するユーザーコントロールを持っています。 ascxには、実行時にアクセスしたいコントロールがいくつかあります。私はascx自体にアクセスできますが、ascx上のコントロールは利用できません。私はシンプルなpublic変数を追加しようとしましたが、ascxにパブリックプロパティを追加しようとしましたが、設計時(コンパイルエラー)にそれらのいずれかにアクセスできません。私は、任意のアイデアをいただければ幸いです - 私がこだわっている... :-)ascxコントロール(asp.net、VBで書かれた)のコントロール/プロパティを参照する必要があります

を私はASCXコントロールのコードビハインドに以下を追加しました:

Public Property areaCode() As String 
     Get 
      Return iebEmpPhoneAreacode.Text 
     End Get 
     Set(ByVal value As String) 
      iebEmpPhoneAreacode.Text = value 
     End Set 
    End Property 

Public AreaCodeStr As String = "" 

と、次のバリエーションを使用しようとしていますプロパティ/ ASCXコントロールにアクセスするには:

For Each ctrl As Control In pnlPhones.Controls 
    If ((TypeOf ctrl Is ctrlPhone) And (ctrl.ID = vbNullString)) Then 
     (DirectCast(ctrl, ctrlPhone)).AreaCodeStr = "test" 

     'or try this 

     ctrl.areaCode = "test" 
    End If 
Next 
+0

何を試しましたか? (コードを表示してください)エラーは何ですか? – David

答えて

1

ホスティングページは、ページを指定してコンパイルされるようにロードされascxファイルを指して@Reference指令を持つ必要があります。以下のような

何か:

<%@ Reference VirutalPath="YourReferenceControl.ascx" %> 

これはどこか@Page指示の下ディレクティブエリアに行く必要があります。

http://msdn.microsoft.com/en-us/library/w70c655a.aspx

+0

ありがとうございました。あなたの回答とあなたが提供したリンクは、私の問題を克服しました。 – SunfiShie

関連する問題