6

我有一个内容页面,我正在更新 asp:Label of Master page from content page 的值。值会更新,但更新后的值不可见。我尝试了两种使用方法

1)。定义一个属性(在母版页上)以设置和获取标签值。例如

public string setErrorMsg
{        
    get { return lbl1.Text; }
    set { lbl1.Text = value; }
}

2)通过从内容页面中找到控件(母版页的标签)并设置其文本。例如

 Label lblMasterError = this.Page.Master.FindControl("lbl1") as Label;
 lblMasterError.Text="text is updated form content page";

如果我在调试模式下看到它,两者都在更新值,但更新的标签值在内容页面上不可见。这种行为的可能原因是什么?

4

1 回答 1

1

我不知道为什么找不到您的标签,但我以前也遇到过同样的情况。这对我有用:

在母版页cs中:

public void SetErrorMsg(string ErrorMsg)
{
    this.lbl1.Text = ErrorMsg;
}

从后面的 aspx 页面代码(用你的替换 myMasterPage 名称):

 ((myMasterPage)Master).SetErrorMsg("Some error text");
于 2012-06-19T21:42:36.573 回答