HtmlHelper是MVC 2中引入的类。它用于以编程方式创建HTML控件。它提供了内置方法来在视图页面上生成控件。在本主题中,我们列出了此类的构造函数,属性和方法。最后,我们解释了一个使用扩展方法创建表单的示例。
注意:HtmlHelper类旨在生成UI。不应在控制器或模型类中使用它。构造函数
【asp.net razor html助手】以下是HtmlHelper类的构造函数。
构造器名称 | 描述 |
---|---|
HtmlHelper(ViewContext, IViewDataContainer) | 通过使用指定的视图上下文和视图数据容器, 初始化HtmlHelper类的新实例。 |
HtmlHelper(ViewContext, IViewDataContainer, RouteCollection) | 通过使用指定的视图上下文, 视图数据容器和路由集合, 初始化HtmlHelper类的新实例。 |
Name | 描述 |
---|---|
RouteCollection | 它用于获取或设置应用程序的路由集合。 |
ViewBag | 它用于获取视图包。 |
ViewContext | 它用于获取或设置有关视图的上下文信息。 |
ViewData | 它用于获取当前视图数据字典。 |
ViewDataContainer | 它用于获取或设置视图数据容器。 |
Name | 描述 | 重载方法 |
---|---|---|
Action(String) | 它用于调用指定的子操作方法, 并将结果作为HTML字符串返回。 | 动作(字符串, 对象)动作(字符串, RouteValueDictionary)动作(字符串, 字符串)动作(字符串, 字符串, 对象)动作(字符串, 字符串, RouteValueDictionary) |
BeginForm() | 它用于生成开始< form> 标记。该表单使用POST方法。 | BeginForm(Object)BeginForm(RouteValueDictionary)BeginForm(String, String)BeginForm(String, String, FormMethod)BeginForm(String, String, FormMethod, IDictionary < String, Object> )BeginForm(String, String, FormMethod, Object)BeginForm(String) , 字符串, 对象)BeginForm(字符串, 字符串, 对象, FormMethod)BeginForm(字符串, 字符串, 对象, FormMethod, 对象)BeginForm(字符串, 字符串, RouteValueDictionary)BeginForm(字符串, 字符串, RouteValueDictionary, FormMethod)BeginForm(字符串, 字符串, RouteValueDictionary, FormMethod, IDictionary < String, Object> ) |
CheckBox(String) | 它用于通过使用指定的HTML帮助器和表单字段的名称来生成复选框输入元素。 | CheckBox(String, Boolean)CheckBox(String, Boolean, IDictionary < String, Object> )CheckBox(String, Boolean, Object)CheckBox(String, IDictionary < String, Object> )CheckBox(String, Object) |
DropDownList(String) | 它使用指定的HTML帮助器和表单字段的名称生成单选select元素。 | DropDownList(String, IEnumerable < SelectListItem> )DropDownList(String, IEnumerable < SelectListItem> , IDictionary < String, Object> )DropDownList(String, IEnumerable < SelectListItem> , Object)DropDownList(String, IEnumerable < SelectListItem> , String)DropDownList(String) , IEnumerable < SelectListItem> , 字符串, IDictionary < String, Object> )DropDownList(String, IEnumerable < SelectListItem> , String, Object)DropDownList(String, String) |
Editor(String) | 它为表达式所表示的对象中的每个属性生成一个HTML输入元素。 | 编辑器(字符串, 对象)编辑器(字符串, 字符串)编辑器(字符串, 字符串, 对象)编辑器(字符串, 字符串, 字符串)编辑器(字符串, 字符串, 字符串, 对象) |
EndForm() | 呈现结束< / form> 标记。 | |
Label(String) | 它生成一个HTML标签元素。 | Label(String, IDictionary < String, Object> )Label(String, Object)Label(String, String)Label(String, String, IDictionary < String, Object> )Label(String, String, Object) |
ListBox(String) | 它使用指定的HTML帮助器返回多选select元素。 | ListBox(String, IEnumerable < SelectListItem> )ListBox(String, IEnumerable < SelectListItem> , IDictionary < String, Object> )ListBox(String, IEnumerable < SelectListItem> , Object) |
Password(String) | 它用于通过使用指定的HTML帮助器来生成密码输入元素。 | 密码(字符串, 对象)密码(字符串, 对象, IDictionary < String, 对象> )密码(字符串, 对象, 对象) |
RadioButton(String, Object) | 它返回一个单选按钮输入元素。 | RadioButton(String, Object, Boolean)RadioButton(String, Object, Boolean, IDictionary < String, Object> )RadioButton(String, Object, Boolean, Object)RadioButton(String, Object, IDictionary < String, Object> )RadioButton(String, 对象, 对象) |
TextArea(String) | 它用于创建网页的文本区域。 | TextArea(String, IDictionary < String, Object> )TextArea(字符串, Object)TextArea(String, String)TextArea(String, String, IDictionary < String, Object> )TextArea(String, String, Int32, Int32, IDictionary < String, Object> )TextArea(字符串, 字符串, Int32, Int32, 对象)TextArea(字符串, 字符串, 对象) |
TextBox(String) | 它用于通过使用指定的HTML帮助器来返回文本输入元素。 | TextBox(String, Object)TextBox(String, Object, IDictionary < String, Object> )TextBox(String, Object, Object)TextBox(String, Object, String)TextBox(String, Object, String, IDictionary < String, Object> ) TextBox(字符串, 对象, 字符串, 对象) |
视图
// HtmlHelperDemo.cshtml
@{
ViewBag.Title = "HtmlHelperDemo";
}
<
hr />
<
h3>User Registration Form<
/h3>
<
hr />
<
div class="form-horizontal">
@using (Html.BeginForm("UserRegistration", "Students"))
{
<
div class="form-group">
@Html.Label("User Name", new { @class = "control-label col-sm-2" })
<
div class="col-sm-10">
@Html.TextBox("username", null, new { @class = "form-control" })
<
/div>
<
/div>
<
div class="form-group">
@Html.Label("Email ID", new { @class = "control-label col-sm-2" })
<
div class="col-sm-10">
@Html.TextBox("email", null, new { @class = "form-control" })
<
/div>
<
/div>
<
div class="form-group">
@Html.Label("Gender", new { @class = "control-label col-sm-2" })
<
div>
<
div class="col-sm-10">
Male @Html.RadioButton("Gender", "male")
Female @Html.RadioButton("Gender", "female")
<
/div>
<
/div>
<
/div>
<
div class="form-group">
@Html.Label("Courses", new { @class = "control-label col-sm-2" })
<
div class="col-sm-10">
C# @Html.CheckBox("C#", new { value = "http://www.srcmini.com/C#" })
ASP.NET @Html.CheckBox("ASP.NET", new { value = "http://www.srcmini.com/ASP.NET" })
ADO.NET @Html.CheckBox("ADO.NET", new { value = "http://www.srcmini.com/ADO.NET" })
<
/div>
<
/div>
<
div class="form-group">
@Html.Label("Contact", new { @class = "control-label col-sm-2" })
<
div class="col-sm-10">
@Html.TextBox("contact", null, new { @class = "form-control" })
<
/div>
<
/div>
<
div class="form-group">
<
div class="col-sm-2"><
/div>
<
div class="col-sm-10">
<
input type="submit" value="http://www.srcmini.com/submit" class="btn btn-primary" />
<
/div>
<
/div>
}
<
/div>
控制者
// StudentsController.cs
using System.Web.Mvc;
namespace MvcApplicationDemo.Controllers
{
public class StudentsController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult HtmlHelperDemo()
{
return View();
}
[HttpPost]
public ContentResult UserRegistration()
{
return Content(
"User Name = " + Request.Form["username"] + "<
br/>" +
"Email ID= " + Request.Form["email"] + "<
br/>" +
"Gender= " + Request.Form["gender"] + "<
br/>" +
"Courses= " + Request.Form.GetValues("C#")[0] + " " + Request.Form.GetValues("ASP.NET")[0] + " " + Request.Form.GetValues("ADO.NET")[0] + "<
br/>" +
"Contact= " + Request.Form["contact"] + "<
br/>"
);
}
}
}
输出:
文章图片
我们将提交以下详细信息的表格。
文章图片
提交后,我们将收到action方法中的所有值。
文章图片
推荐阅读
- ASP.NET教程目录
- asp.net razor控件结构
- asp.net razor代码块
- asp.net razor代码表达式
- asp.net razor标记语法
- asp.net mvc ViewData、ViewBag和TempData
- asp.net mvc脚手架
- asp.net mvc验证
- asp.net mvc路由