1

これが状況です。masterpage サイトがあります。
別のマスターページ Shop.Master を含むマスター。
Shop.Master 内には、Something.aspx をロードする ContentPlaceHolder があります。
トップマスターページ内にラベルが[lblText]存在します。
ページSomething.aspxには、テキストボックス[boxInput]とボタンが含まれています[btnButton]
私が達成しようとしているのは、ボタンをクリックすると[btnButton]、値lblText.Textが のコンテンツに設定されることです[boxInput]

これが問題の抽象的な見方です。 ここに画像の説明を入力

皆さんが私を助けてくれることを願っています。今回は、Google はあまり役に立ちません。

前もって感謝します。

4

2 に答える 2

2

このようにしてみてください。役に立ちますか

     ContentPlaceHolder plchldr= this.Master.Master.FindControl("YourMainMasterContentID") as ContentPlaceHolder;
            Label lbl = plchldr.FindControl("lblText") as Label;
             if(lbl !=null)
             { 
               lbl.Text="SomeText"
             }
于 2012-05-04T09:43:48.580 に答える
1

これは一般的に、少し奇妙な問題です。過去にこれを解決できた唯一の方法は、次のようなものです。

((MasterPageType)this.Master).lblText = "Whatever";

特定の状況に応じて、2 つのマスター ページをバブルアップする必要がある場合があります。

((MasterPageRootType)((MasterPageType)this.Master).Master).lblText = "Whatever";

Masterpage を別のタイプに変更すると、これは明らかに失敗します。

(私は WebForms を始めてから何年も経っているので、これが 100% でな​​い場合はご容赦ください)

于 2012-05-04T09:39:07.860 に答える