【问题标题】:How to override label using EditorTemplate?如何使用 EditorTemplate 覆盖标签?
【发布时间】:2011-06-13 00:33:34
【问题描述】:

对于 MVC3 中的 string 属性,我在 ~/Shared/EditorTemplates/String.cshtml 创建了一个局部视图,并在其中放置了以下内容:

@model System.String
<div class="Input">
    @Html.TextBox("", this.Model)
    @Html.ValidationMessage("")
</div>

查看结果,看起来不错。但是标签仍然出现。如您所见,它不包含在上面的局部视图中,因此它必须来自基本视图。

如何覆盖标签输出,以便在执行@Html.EditorForModel() 时,我的string 属性将具有自定义标签?

【问题讨论】:

  • 我最终创建了一个自定义 Object.cshtml 模板。但我仍然想知道是否有办法覆盖标签部分。

标签: asp.net asp.net-mvc-3 view razor


【解决方案1】:

使用System.ComponentModel.DisplayName 属性覆盖成员名称。

例如:

public string MyProperty {get;set;}  //displays "MyProperty"

[DisplayName("My Property")] 
public string MyProperty {get;set;}  //displays "My Property"

【讨论】:

    【解决方案2】:

    我最终创建了一个自定义 Object.cshtml 模板。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2010-09-12
      • 2021-10-01
      • 1970-01-01
      • 2015-01-29
      • 1970-01-01
      相关资源
      最近更新 更多