有没有办法将我的占位符更改为只读取模型的显示名称属性?
目前我有这行代码。
@Html.TextBoxFor(x => x.Address1, new { @class = "form-control text-center", @placeholder = "Address Line 1" })
我希望占位符只使用我模型中的displayname属性。
[Display(Name = "Address Line 1")]
public string Address1 { get; set; }
修订: 试过但没有获得占位符来展示。
@Html.TextBoxFor(x => x.Address1, new { @class = "form-control text-center", @placeholder = ViewData.ModelMetadata.DisplayName })
答案 0 :(得分:1)
这似乎可以解决问题...
@Html.TextBoxFor(x => x.Address1, new { @class = "form-control text-center", @placeholder = @Html.DisplayNameFor(x => x.Address1) })
答案 1 :(得分:0)
保持模型相同:
[Display(Name = "Address Line 1")]
public string Address1 { get; set; }
然后为类型字符串创建一个EditorTemplate,您可以对任何类型执行此操作:
@model string
@Html.TextBoxFor(x => x, new { @Placeholder = ViewData.ModelMetadata.DisplayName })
然后调用您的模板
@Html.EditorFor(x => x.Address1 )
希望这有帮助。