首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从MultiSelectList返回MvcHtmlString

如何从MultiSelectList返回MvcHtmlString
EN

Stack Overflow用户
提问于 2015-11-06 16:28:10
回答 1查看 334关注 0票数 3

我在我的项目中派生了mvc4 MultiSelectList类来实现ToMvcHtmlString方法。如何从MultiSelectList实例内部获取纯html?

代码语言:javascript
复制
public MvcHtmlString ToMvcHtmlString()
        {
            return ???;
        }
EN

回答 1

Stack Overflow用户

发布于 2015-11-11 13:18:16

您可以使用扩展方法HtmlHelper.ListBox来获取MvcHtmlString的一个实例(目前在视图中通常用作@Html.ListBox() )。

此扩展方法存在于HtmlHelper类的System.Web.Mvc.Html命名空间中。因此,您所需要做的就是创建如下方法:-从您的视图传入通常用作@Html的HtmlHelper实例-其中name是ListBox所需的参数(您可以将其传入,或将其硬编码在您的类中-最好将其传递到方法中)

代码语言:javascript
复制
    public MvcHtmlString ToMvcHtmlString(HtmlHelper helper, String name) {
        return helper.ListBox(name, this);
    }

然而,这样做违背了从您自己的类中返回纯MvcHtmlString的目的。因为您仍然需要传入视图中提供的HtmlHelper,这意味着您还可以使用以下代码来实现相同的功能:

代码语言:javascript
复制
@Html.ListBox(...)

HtmlHelper是必需的,因为它需要访问视图,因为在构建/填充列表时可能需要额外的信息。

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

https://stackoverflow.com/questions/33562437

复制
相关文章

相似问题

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