0

カート内の商品の数を示すショッピングカートアイコンを使用しています。しかし、カートにアイテムを追加してもショッピングが更新されないので、子ページのボタンをクリックした後にマスターページのラベルのテキストを変更する方法があるかどうかを知りたいです。

4

3 に答える 3

4

MasterPageラベルのテキストを設定/取得するために使用できるパブリックプロパティを提供することをお勧めします。

あなたのマスターで(そのタイプが呼ばれると仮定してSiteMaster):

public String ShoppingCartNumber{ 
    get{ return LblShoppingCart.Text; }
    set{ LblShoppingCart.Text = value; }
}

ボタンのクリックイベントハンドラーで:

SiteMaster master = (SiteMaster)Page.Master;
master.ShoppingCartNumber = "1234";

このアプローチは単純明快で、エラーが発生しにくく、読みやすくなっています。ページを変更せずにマスターのコントロールを変更することもできます(ラベルをテキストボックスに置き換えたい場合はfe)。

于 2012-05-08T10:48:52.523 に答える
0

これを試して

Label mpLabel = (Label) Master.FindControl("masterPageLabel");
if(mpLabel != null)
{
    Label1.Text = "Master page label = " + mpLabel.Text;
}
于 2012-05-08T10:49:19.777 に答える
0

これを試してください:ファイル
に追加しますmasterpage.cs

public Label lbl
    {
        get { return YourLabelId; }
        set { YourLabelId= value; }
    }

これをコンテンツページに追加します。

<%@ MasterType VirtualPath="~/YourMasterPageName.Master" %> 

次に、ボタンクリックイベントのコンテンツページにアクセスします。

string name = Master.lbl.text;
于 2015-06-18T12:49:36.007 に答える