TJK*_*TJK 3 editorfor asp.net-mvc-3
我正在使用这个,一个编辑器模板(位于我的解决方案中的Shared\EditorTemplates文件夹中)
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>
<%=Html.TextBox("", (Model.HasValue ? Model.Value.ToString("MM/dd/yyyy") : string.Empty), ViewData )%>
Run Code Online (Sandbox Code Playgroud)
这在我看来
@Html.EditorFor(model => model.ModifiedDate)
Run Code Online (Sandbox Code Playgroud)
如何在视图中只读这个字段
<%= Html.EditorFor(x => x.ModifiedDate, new { @readonly = "readonly" }) %>
Run Code Online (Sandbox Code Playgroud)
更新:
好了,既然你在这里发给我示例项目的问题是:
~/Views/Shared/EditorTempletes文件夹中有拼写错误.它应该是~/Views/Shared/EditorTemplates.您必须调用编辑器模板DateTime.ascx而不是DateTime.aspx.因此,标题必须如下所示(使用<%@ Control ...而不是<%@ Page ...):
<%@ Control
Language="C#"
Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>"
%>
<%= Html.TextBox(
"",
(Model.HasValue ? Model.Value.ToString("MM/dd/yyyy") : string.Empty),
ViewData
) %>
Run Code Online (Sandbox Code Playgroud)