3

内部にあるusercontrolを作成しました。 今、私はそれを2回に入れました. どちらもページに 1 つずつ読み込まれます。の で、の制御対象を取得したいと考えてい ます。どうすれば達成できますか?treeview

aspx pageIdusercontrolAusercontrolB


pre-render eventusercontrolAtreeviewusercontrolB


4

6 に答える 6

4

両方のユーザー コントロールのコントロールにアクセスするには、 のインスタンスが必要です。そのため、インスタンスを適切なストレージに保存して、イベントでアクセスできるようにしてくださいusercontrolBtreeviewpre-render

  1. 内に UC タイプを保持するプロパティを導入しますUser-Control

    public MyUserControl MainUserControl { get; set; }
    
  2. 親 ASPX でプロパティを次のように設定しますusercontrolB

    usercontrolA.MainUserControl = usercontrolB;
    usercontrolB.MainUserControl = usercontrolB;
    
  3. これで、MainUserControlプロパティを使用して以下にアクセスできますTreeView

    MainUserControl.treeView1 ...
    
于 2012-12-27T12:48:41.860 に答える
0

user-controlA のOnPreRenderイベントで次のコードを使用できます。

var tree = this.Page.FindControl("uc2").FindControl("treeview1");

注:「uc2」は ASPX ページの User-ControlB の ID です。

または、これを試すことができます:

 var tree = this.Page.LoadControl("UserControlB.ascx").FindControl("treeview1");
于 2012-12-27T17:58:44.410 に答える
0

(他の人が参照するのに役立つ投稿を再投稿しているだけです)

いくつかの値をプロパティとして渡し、RadTree (ユーザー コントロール内のもの) のデータバインド メソッドを再度呼び出すことで、コントロールのイベントを使用して RadTreeView をいつでも更新できます。RadTree 自体のオブジェクトを渡すことができると言われていますが、 IMO。

于 2013-01-04T19:06:21.867 に答える