TemplateName 就可以了:
DataBoundControlMode.ReadOnly, "DisplayTemplates" }, { DataBoundControlMode.Edit, "EditorTemplates 这是两组显示模式的模板化操作方法的字典,可以看出同一个HiddenInput特性将在不同的显示模式先输出不同的HtmlDom结构; 在我们的ASP.NETMVC项目中要同样的有两组文件夹DisplayTemplates、EditorTemplates
你需要如下操作: 在Shared文件夹中创建名为EditorTemplates(注意要一样的名称)的文件夹 添加名为string.cshtml(注意要一样的名称)文件,并添加如下代码: @model string Cshtml(注意名称相同)文件到EditorTemplates中 添加如下代码: @model string @Html.TextArea("", ViewData.TemplateInfo.FormattedModelValue
你需要如下操作: 在Shared文件夹中创建名为EditorTemplates(注意要一样的名称)的文件夹 添加名为string.cshtml(注意要一样的名称)文件,并添加如下代码: @model string Cshtml(注意名称相同)文件到EditorTemplates中 添加如下代码: @model string @Html.TextArea("", ViewData.TemplateInfo.FormattedModelValue
针对具体的表示模板View名称的某个字符串,会根据呈现的模式在指定的路径(显示模式和编辑模式分别为“/DisplayTemplates/{TemplateName}”和“/EditorTemplates
实现如上图所示的效果的四个模板定义如下,它们被保存在View\Shared\EditorTemplates目录下面。
ListBox ListBoxFor 以上可以很清楚的看到显示模式和编辑模式两种不同的显示形式,由于框架是根据元数据对象中的数据类型属性值去寻找对应模板的,因此将需要将模板的View定义放在EditorTemplates
由于我们需要改变的是布尔类型对象在编辑模式下的呈现形式,所以我们需要将作为模板的分布View定义在EditorTemplates目录下,这个目录可以存在于Views/ Shared下,也可以存在于Views