这很奇怪.我看到@ Html.Button()的引用,但是当我输入Intellisense没有找到这样的帮助时......有下拉列表,隐藏,编辑等等,但没有按钮!
那是怎么回事?
我有一种情况需要编写一个HTML Helper来扩展另一个html帮助器.通常,帮助器看起来像这样.
@Html.TextAreaFor(model => model.Content, new { @class = "some css", @data_bind = "some other stuff..." })
这样可以正常工作,但它必须包含在其他一些始终相同的HTML中.为了方便,我想封装它,就像这样.
public static MvcHtmlString CondensedHelperFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, object htmlAttributes) {
var stringBuilder = new System.Text.StringBuilder();
var tag = new TagBuilder("div"); tag.AddCssClass("some_css");
stringBuilder.Append(toolbar.ToString(TagRenderMode.SelfClosing));
stringBuilder.Append(htmlHelper.TextAreaFor(expression, htmlAttributes));
// more tags and such...
return new MvcHtmlString(stringBuilder.ToString());
}
Run Code Online (Sandbox Code Playgroud)
这条线stringBuilder.Append(htmlHelper.TextAreaFor...是我想要改变的.必须去那里的CSS类总会出现.所以我宁愿把它包括在这里.但是,我希望能够在顶级助手中指定其他CSS类.所以......
@Html.CondensedHelperFor(model => model.Content, new { @class = "some_other_css" })
永远存在的静态css会通过Helper覆盖.
有任何想法吗?
我正在使用VS Express 2012进行Web.我的项目是一个MVC 4项目.
我正在尝试创建一个菜单项,这是一个带有标签的png图像.我几乎剪切并粘贴了这段代码:
当我尝试使用帮手剃刀时找不到它.
我收到此错误:
CS1061:'System.Web.Mvc.HtmlHelper'不包含'AddMenuItem'的定义,并且没有可以找到接受类型'System.Web.Mvc.HtmlHelper'的第一个参数的扩展方法'AddMenuItem'(你错过了吗?使用指令或程序集引用?)
我的代码如下所示:http://pastebin.com/cfsN99tF
我试图从_Layout.cshtml中使用它:http://pastebin.com/5vN8yYCa
我已将命名空间添加到Web.Config
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="HtmlHelperExtensions" />
</namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)
我还需要做什么?
<div class="orderby_name">
@Html.ActionLink(" ", "DisplayCategory", "Categories", new { articleSortBy = "Name", articleSortType = "asc" }, null)
</div>
Run Code Online (Sandbox Code Playgroud)
如果存在ImageLink,我正在寻找剃须刀.现在我有@ Html.ActionLink,因为我没有任何文字名称,我无法点击它.我希望将图像作为链接.
如何将图像作为剃须刀中的链接?