同じマスター ページ内にあるユーザー コントロールから、マスター ページ内のページのパブリック プロパティにアクセスしようとしています。私が見たほとんどの例では、プロパティの値をページの隠し要素に配置し、マスター ページへの参照を取得し、それに沿って何かを使用してアクセスすることを推奨しています。
Dim mstr As MasterPage = Page.Master
Dim element = mstr.FindControl("hiddenField1"), HiddenField)
または、Cookie、URL などに値を入れて、ユーザー コントロールから読み取ります。
しかし、私は値を取得することができました
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim mstr As MasterPage = Page.Master
Return CallByName(mstr.Page, "ProductCounter", [Get])
End Sub
私のソリューションは
CallByBame は基本的に、コンパイラがメソッドを把握する「アーリー バインディング」とは対照的に、「実行時にメソッドを把握する」「レイト バインディング」を提供します。
他の解決策を考えて、私は疑問に思っていました。2 番目の方法は、パフォーマンス、セキュリティ、型の安全性などを考慮して、この目標を達成するための劣った方法ですか?
編集: Icarusによる回答は、asp..net Web アプリケーションでは機能しますが、asp.net Web サイトでは機能しません。後でうまくいく答えを探しています。