首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ASP.NET MVC中动态添加ViewUserControl

在ASP.NET MVC中动态添加ViewUserControl
EN

Stack Overflow用户
提问于 2009-06-02 19:11:01
回答 2查看 725关注 0票数 1

我想知道在运行时(向ViewPage)添加ViewUserControl是否存在任何已知问题。如果我以解密方式添加控件,则可以正常工作,但如果我以编程方式添加控件(在本例中是在代码隐藏文件中),则效果不佳。我没有得到一个错误,它只是没有呈现控件,但单步执行调试器确实确认页面生命周期中的相关方法正在被调用。

我确实意识到在ASP.NET MVC中使用隐藏在文件后面的代码是不太合适的,但我确实有理由这样做。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-06-02 19:17:19

发送要加载的控件列表,并将其传递给视图模型。

控制器操作:

代码语言:javascript
复制
var controlsToLoad = new List<string>();
controlsToLoad.Add("foo");

return View(controlsToLoad);

查看:

代码语言:javascript
复制
<% foreach (var control in Model as List<string>) { %>
    <% Html.RenderPartial(control); %>
<% } %>

这将使您远离后台代码,并且仍然允许您在控制器中动态指定要在视图中加载哪些控件。

票数 5
EN

Stack Overflow用户

发布于 2009-06-02 19:20:28

或者,如果您需要其他功能,可以使用更圆滑的方法,将上述建议封装在ViewPage类的扩展方法中。

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

https://stackoverflow.com/questions/941361

复制
相关文章

相似问题

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