如何在ASP.MVC中指定多行编辑器的列和行?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (146)

在ASP.NET 3中,如何在ASP.MVC中指定多行编辑器的列和行?

HTML:

 <textarea cols="40" rows="10"></textarea>

我的MVC 3模型的相关部分:

[UIHint("MultilineText")]
public string Description { get; set; }

Razor cshtml的相关部分:

<div class="editor-field">
    @Html.EditorFor(model => model.Description)
</div>

我正在查看的资料来源:

 <div class="editor-field">
     <textarea class="text-box multi-line" id="Description" name="Description"></textarea>
 </div>

如何设置行和列?

提问于
用户回答回答于

使用TextAreaFor

@Html.TextAreaFor(model => model.Description, new { @class = "whatever-class", @cols = 80, @rows = 10 })

或者用multi-lineclass的style。

你也可以为此编写EditorTemplate

用户回答回答于

在ASP.NET MVC 5中,可以使用该[DataType(DataType.MultilineText)]属性。它将呈现一个TextArea tag。

public class MyModel
{
    [DataType(DataType.MultilineText)]
    public string MyField { get; set; }
}

然后在视图中,如果你需要指定行,你可以这样做:

@Html.EditorFor(model => model.MyField, new { htmlAttributes = new { rows = 10 } })

或者只是用正确的重载使用TextAreaFor:

@Html.TextAreaFor(model => model.MyField, 10, 20, null)

扫码关注云+社区

领取腾讯云代金券