我刚刚创建了一个MVC项目,我的视图看起来像这样
{
@model Models.LeadModels
ViewBag.Title = "Add a Lead";
}
<h2>@ViewBag.Title.</h2>
<h3>@ViewBag.Message</h3>
<p>@ViewBag.SaveResult</p>
@using (Html.BeginForm("Add", "Lead"))
{
<p>@Html.LabelFor(m => m.FirstName)
@Html.TextBoxFor(m => m.FirstName)</p>
<p>@Html.LabelFor(m => m.LastName)
@Html.TextBoxFor(m => m.LastName)</p>
<p>@Html.LabelFor(m => m.Company)
@Html.TextBoxFor(m => m.Company)</p>
<p>@Html.LabelFor(m => m.Province)
@Html.TextBoxFor(m => m.Province)</p>
<p>@Html.LabelFor(m => m.Telephone)
@Html.TextBoxFor(m => m.Telephone)</p>
<p>@Html.LabelFor(m => m.EmailAddress)
@Html.TextBoxFor(m => m.EmailAddress)</p>
<p>@Html.LabelFor(m => m.LeadStatus)
@Html.TextBoxFor(m => m.LeadStatus)</p>
<p><input type="submit" value="Add Lead" /></p>
}
渲染时,标签与我的模型属性相同,如文中所说“FirstName”
问题。
有没有办法使用HTML Helper方法输入不同的标签(First Name而不是FirstName)?
我们可以做些改变显示的巧妙设计吗?比如将标签设置为固定宽度,以便它们都排成一行?
有没有办法使用HTML Helper方法输出提交按钮?或者我是否需要像我一样手动编写HTML?
答案 0 :(得分:0)
有没有办法放入不同的标签(名字而不是 FirstName)使用HTML Helper方法吗?
您可以在属性名称
上使用Display
属性数据注释
public class LeadModels
{
[Display(Name = "First name")]
public string FirstName { set; get; }
}
LabelFor
辅助方法将呈现您为Name属性提供的值
我们可以做些改变显示的巧妙设计吗?这样 将标签设置为固定宽度,以便它们都排成一行?
您可以使用您的css类样式的内容。您也可以考虑使用bootstrap css类,它以一种整洁的方式进行对齐
有没有办法使用HTML Helper方法输出提交 按钮?或者我是否需要像我一样手动编写HTML?
没有。没有帮助方法。您应该为按钮编写html标记。
此外,在asp.net核心版本中,可以使用标记帮助程序,它允许我们编写更多HTML样式代码,而不是在视图中调用C#方法。