繁体   English   中英

您可以在.NET中异步更改母版页的ContentPlaceHolder的内容页吗?

[英]Can you change a master page's ContentPlaceHolder's Content Page Asynchronously in .NET?

从我已经读过的内容看,这似乎是不可能的,但是我想看看外面是否有人暗中欺骗他们,或者至少是一个明确的“否”。

假设母版页实际上只是内容页要使用的控件,而不是内容页的“母版”。 如果我想从一个内容页面转到具有相同母版页面的另一个内容页面,我只会说

Response.Redirect("PageB.aspx");

但这会立即导致回发,从而使页面闪烁,这是糟糕的预ajax处理方式。

在此当前项目中,我试图查看当单击母版页上的按钮时,是否可以找出如何异步更改母版页中ContentPlaceHolder的当前内容页的方法。

如果可能的话,这可能吗?

我不知道是否可以在页面(.aspx)之间进行切换,但是绝对可以使用UserControls完成。

每个ASP.Net页面都有其自己的URL,因此您要尝试的是从一个URL转到另一个URL而没有任何回发,这不是应该的工作方式。


使用用户控件(.ascx):

创建一个使用MasterPage的页面,并在内容中使用类似的内容

<ajax:UpdatePanel ...>

    <ContentTemplate>

        <asp:PlaceHolder ...>

    </ContentTemplate>

</ajax:UpdatePanel>

搜索UpdatePanel并调整其设置以执行所需的操作,然后学习如何在占位符中交换用户控件。

,您不能这样做,因为母版页实际上是在特定aspx页上呈现的控件,而不是实际上包含aspx页,因为它看起来像是在程序设计和设计视图中。

更多信息:

但是,您可以使用各种其他控件来模拟这种效果。 asp:MultiView控件是一个示例,每个“页面”都可以在单个视图中创建并放置在更新面板中,从而可以异步切换它。 或者,您可以在单独的用户控件中定义每个页面,然后将它们放在更新面板中,根据需要异步切换这些控件上的visible属性。

与更改母版页的内容占位符类似,实际上有很多不同的方法可以实现效果。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM