Asp.net mvc 3 如何覆盖布局编辑器
如何覆盖布局编辑器?例如,如果我想在编辑器字段之前或之后呈现一些文本。EditorFor是在HtmlHelper类上定义的扩展方法。如果你想覆盖它,你必须子类HtmlHelper。根据我们的观点,重写扩展方法是个坏主意。即使您决定这样做,您将如何使mvc使用子类HtmlHelper而不是默认的HtmlHelper。最好的办法是重载EditorFor方法,并在视图中使用它,而不是在默认视图中使用它 以下是在EditorFor前后添加一些文本的代码示例 步骤1:在模型类中用一个特定的数据类型定义字段,该数据类型具有逻辑上的自定义名称,如SmallText、CustomName等。我在本例中只使用了MyTypeOfFieldAsp.net mvc 3 如何覆盖布局编辑器,asp.net-mvc-3,asp.net-mvc-2,Asp.net Mvc 3,Asp.net Mvc 2,如何覆盖布局编辑器?例如,如果我想在编辑器字段之前或之后呈现一些文本。EditorFor是在HtmlHelper类上定义的扩展方法。如果你想覆盖它,你必须子类HtmlHelper。根据我们的观点,重写扩展方法是个坏主意。即使您决定这样做,您将如何使mvc使用子类HtmlHelper而不是默认的HtmlHelper。最好的办法是重载EditorFor方法,并在视图中使用它,而不是在默认视图中使用它 以下是在EditorFor前后添加一些文本的代码示例 步骤1:在模型类中用一个特定的数据类型定义字段
[Required(ErrorMessage = "Field_Value code is a required field.")]
[MaxLength(100)]
[Display(Name = "Field Display Name")]
[DataType("MyTypeOfField")]
public string MyField { get; set; }
步骤2:使用以下代码在文件夹:Views/Shared/EditorTemplates中创建mytypeofield.cshtml。如果EditorTemplates文件夹不存在,请创建它
@inherits System.Web.Mvc.WebViewPage<string>
@string.Format("{0, -10}","XXXXXXXXXX") @Html.TextBox("", "", new { style = "width:30px; text-align:right;" }) @string.Format("{0, -10}","1234567890")
希望这有帮助