首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET中MultiView的替代方案

ASP.NET中MultiView的替代方案
EN

Stack Overflow用户
提问于 2010-01-19 15:44:55
回答 3查看 1.7K关注 0票数 1

我正在建设的网站包含大量的视图,这些视图将显示在相同的位置,但根据用户如何导航菜单而隐藏或显示。

当你有一个包含10个不同视图的MultiView时,在visual studios设计视图中会变得相当混乱。我已经在几个用户控件中分离了每个视图的内容。但是有没有MultiView的替代品呢?

EN

回答 3

Stack Overflow用户

发布于 2010-01-19 15:49:00

我通常只使用面板或占位符,并手动切换可见性。但是我也没有使用VS设计器...

票数 0
EN

Stack Overflow用户

发布于 2014-09-03 11:51:30

假设您在这里使用的是ASP.NET webforms ...

这是投资于一些强大的web控件的另一个原因,比如Telerik ASP.NET控件套件。

您可以将它们的RadTabStrip控件与RadMultiPage控件一起使用。

示例如下:http://demos.telerik.com/aspnet-ajax/tabstrip/examples/multipage/loading-external-content/defaultcs.aspx

您可以为每个RadPageView指定一个ContentUrl,这允许您将每个视图分离到单独的aspx文件中。

这通过将每个视图划分到各自的页面中简化了您的解决方案,并提高了性能,因为只有在最初查看时才会请求RadPageView内容。

票数 0
EN

Stack Overflow用户

发布于 2014-09-03 18:44:49

我这样做的方式是在页面上有一个占位符,并根据需要动态地向其添加控件。

根据您所说的,它看起来像是用户导航一个菜单,这决定了在MultiView控件中显示哪个视图……

我会这样做的

ASPX文件:

代码语言:javascript
复制
<asp:PlaceHolder id=phContentContainer" runat="server"></asp:PlaceHolder>

代码隐藏

代码语言:javascript
复制
switch (MenuSelection)
{
     case "LOGIN" //Display the login control
     {
        ucLoginUserControlType loginControl = (ucLoginUserControlType)LoadControl("~/UserControls/ucLoginUserControlType.ascx");

        phContentContainer.Controls.Add(loginControl);
     }
}

显然,你会希望代码隐藏比上面的10个视图更高效、更干净……但你明白我的意思。

这将使您的aspx页面保持简单,并使将来添加的控件更易于实现。

希望这能有所帮助,我已经从内存中输入了代码,所以一些语法可能不正确-如果你不能让它运行,给我一个呼喊,我会挖掘出一些例子,当我这样做的时候。

祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2091884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档