这并没有变成像我最初认为是复杂的。
有点免责声明:这是没有完全审查,并且是一个简单的例子,只是为了让它工作。
这是我做过什么:
〜/查看/共享/ _TemplateMaster.cshtml
<div class="editor-label">
<label for="@ViewData.ModelMetadata.PropertyName">@ViewData.ModelMetadata.GetDisplayName()</label>
</div>
<div class="editor-field">
@RenderSection("DataContent")
</div>
<div>
@Html.ValidationMessage("")
</div>
〜/查看/共享/ EditorTemplates/String.cshtml
@{
Layout = "~/Views/Shared/_TemplateMaster.cshtml";
}
@section DataContent
{
@Html.TextBox("", ViewData.TemplateInfo.FormattedModelValue, new { @class = "" })
}
非常感谢为了这!我不是一个专业的程序员,但我是一个专业的“吹风机外”,这节省了我的一些毛囊。 :) – REMESQ 2012-02-07 14:14:14
真的很不错,但如果用@ Html.LabelForModel()和'@Html.TextBox替换主模板中的'',则可以使用HtmlHelper方法而不是ViewData, ...'在你的编辑器模板中加上@ Html.TextBoxForModel()' – jfren484 2015-10-08 18:35:40