使用UpdatePanel从内容页面更新MasterPage上的标签,而不使用完整的回发

apr*_*ros 4 c# vb.net asp.net asp.net-ajax

这种情况是否存在解决方案?

我有一个内容页面,其中包含一个UpdatePanel并有一个组合框.组合框值更改后,我想更改主页面中的标签.所以,对我来说主要的问题是我不想在每个组合框值改变的情况下进行完整的回发.是否有一些技巧可以克服完整的回发?

提前致谢.

Tim*_*ter 8

  • 将您的标签放在单独的UpdatePanel中的MasterPage中.
  • 在dropdownlist的SelectedIndexChange中进行异步回发
  • 从SelectedIndexChanged-Handler调用Masterpage(fe ShowMessage)上的一个函数,该函数更改Label的Text并在Masterpage的UpdatePanel上调用Update.

您可以通过以下方式访问MasterPage的功能(从ContentPage中作为ContentPage中的UserControls):

((MyMaster)this.Page.Master).ShowMessage(text);
Run Code Online (Sandbox Code Playgroud)

在VB.Net中

DirectCast(Me.Page.Master, MyMaster).ShowMessage(text)
Run Code Online (Sandbox Code Playgroud)

当然,您必须替换MyMasterMasterPage的实际类型,并实现更改Label的Text(ShowMessage在此示例中)并更新MasterPage中的UpdatePanel 的公共函数(sub).将其UpdateMode属性设置为Conditional,并确保ChildrenAsTriggers属性为false,并且没有为面板定义显式触发器.