Использование Html.EditorFor для генерации текстовой области с определенным количеством строк и столбцов - PullRequest
8 голосов
/ 10 февраля 2011

Я знаю, что вы можете использовать атрибут DataType с помощником EditorFor html, чтобы указать, что конкретное свойство объекта модели должно отображаться в виде многострочного поля ввода.

Что если я хочу указать количество строк и столбцов, которое должна иметь текстовая область?

В модели:

[DataType(DataType.MultilineText)]
public string HTMLText { get; set; }

В представлении:

@Html.EditorFor(x => x.HTMLText)

Требуемый результат:

<textarea id="HTMLText" rows="10" cols="40">value</textarea>

Есть ли способ генерировать код такого типа без использования помощника @ Html.Textarea ()?

Ответы [ 3 ]

8 голосов
/ 10 февраля 2011

Не уверен, как установить строки и столбцы, но вы можете изменить CSS этих текстовых областей, используя класс .multi-line.Этот класс добавляется в текстовое поле при использовании EditorFor, поэтому вы можете указать ширину и высоту в этом классе, чтобы получить желаемые размеры.

.multi-line { height:5em; width:5em; }
1 голос
/ 01 сентября 2017

Вы можете указать размер атрибутов и эквивалентный символ строки и столбца в Razor / c #, т.е.:

@Html.TextAreaFor(model => model.Longtext, new { htmlAttributes = new { @class = "ctrl-col2 ctrl-col1", @row = "4", @col = "30" } })
0 голосов
/ 22 июня 2017

Похоже, это больше не требуется в MVC 5, если у вас есть @Html.EditorFor с полем DataType.MultilineText.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...