- - PR -
ユーザコントロールを入れ子にしたとき、参照元が取得できない
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-12-17 17:10
いつもお世話になっています、VB.NET暦2ヶ月のものです。
現在開発中のWebアプリケーションで、以下のケースが発生しました。 1.大元のWebフォーム ↑ 2.画面全体を定義するWebユーザコントロール ↑ 3.画面一部分を定義するWebユーザコントロール ↑ 4.共通のメソッド(Server.MapPathを使うため、 引数にSystem.Web.UI.Page型オブジェクトが必要) 以前までは(3)を直接Webフォームに貼り付けており、 (4)を呼び出すときに引数 Me.Page を指定していました。 ところが上記のようなWebユーザコントロールの入れ子 状態になったとき、自分の呼び出し元(1)のPage型 オブジェクトが取得できなくなってしまいました。 (Me.PageとかMe.ParentとかがNothingです) (4)は他所の方が作られたので、簡単に改修すると いうわけにはいかないのですが、上記のような Webユーザコントロールが入れ子になった状態で、 Page型オブジェクトを取得するにはどのようにすれば 良いでしょうか? |
|
投稿日時: 2003-12-17 18:17
自己レスです。
ユーザコントロールの変数宣言時にWithEvents句を付けたら、 あっさりと取得できるようになりました。 参考にした書籍ではWithEventsの指定は無かったのですが、 MSのサポートの中に記事があったので試してみました。 http://support.microsoft.com/default.aspx?scid=kb;ja;319100 ただ、WithEvents句がある・ないでどう違うのかはさっぱり不明…。 WithEvents句のヘルプ記述もシンプルなので全然わかりませんでした。 |
1
