好的,我已经创建了以下两个方法。第一个是 HtmlHelper 上的扩展方法。第二个通过助手的实例并生成复选框。我的实际示例与复选框无关,这只是解释我的问题的最简单方法。
public static MvcHtmlString MakeBoxGroup(this HtmlHelper<T> Html, List<string> names)
{
string outStr = "";
foreach(string name in names)
outStr += MakeBox(Html, name);
return new MvcHtmlString(outStr);
}
public static MvcHtmlString MakeBox(HtmlHelper<T> Html, string name)
{
return Html.CheckBox(name);
}
我的问题:当我尝试这个时,它告诉我 HtmlHelper 类没有实现 CheckBox 或任何这些类型的助手。任何人都知道如何向下传递 HtmlHelper 的正确实例?我假设我只是在这里使用了错误的类型,但我不确定。
最佳答案
给你。复选框在静态类 InputExtensions 的 System.Web.Mvc.Html 命名空间中。
using System.Web.Mvc.Html;
public static MvcHtmlString MakeBoxGroup(this HtmlHelper Html, List<string> names)
{
string outStr = "";
foreach (string name in names)
outStr += MakeBox(Html, name);
return new MvcHtmlString(outStr);
}
public static MvcHtmlString MakeBox(HtmlHelper Html, string name)
{
return Html.CheckBox(name);
OR
return InputExtensions.CheckBox(Html,name);
}
关于c# - 使用 Razor 将 HtmlHelper 实例传递给另一个方法 MVC3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6523079/