如何在 asp.net 中获取内容页更新面板中的母版页控件



在母版页中有一个标签控件。应该把这个控件放到内容页的更新面板上。内容页中的代码为

ModalPopupExtender popUp = (ModalPopupExtender)Master.FindControl("ModalPopupExtender1");
HtmlGenericControl lblMessage = (HtmlGenericControl)Master.FindControl("InfoMesg");
lblMessage.InnerText = "Invalid page number, Please enter valid page number.";
popUp.Show();

当更新面板放置时,lblMessage中的消息不被显示。有人能帮我实现这个吗?

首先,为什么它不工作?当由UpdatePanel触发回发时(可以这么说),响应时将更新的页面的唯一部分是UpdatePanel内容。这个标签在UpdatePanel之外;因此,它不会被更新。

如何解决这个问题:

  1. 显而易见,但在理论上是最受欢迎的解决方案。移动标签内的UpdatePanel,如果它是逻辑上属于那里的东西。当然,这可能不适用于您的特定情况。

  2. UpdatePanel可以注册一些脚本来更新标签的文本(确保使用ClientID)。

  3. 如果你的UpdatePanel没有UpdateMode设置,或者它被设置为Always(基本上这是一个默认值),当这个导致回发时,可能所有其他更新面板也会被更新。所以你可以用一个单独的UpdatePanel来包装标签

最新更新