TextBoxFor Mulitline - PullRequest
       3

TextBoxFor Mulitline

11 голосов
/ 10 января 2012

Привет, люди, на которых я был в течение 5 дней и не смог найти решение, пытаюсь заставить его перейти на многострочное @Html.TextBoxFor(model => model.Headline, new { style = "width: 400px; Height: 200px;"}), но мне не повезло.

Вот что я попробовал:

@Html.TextBoxFor.Multiline (does not work)

Я поставил Multiline на конец нового, и это не сработало. Какой самый простой способ сделать это.

Спасибо, я использую MVC3 C #

1 Ответ

48 голосов
/ 10 января 2012

Вы можете использовать помощник TextAreaFor:

@Html.TextAreaFor(
    model => model.Headline, 
    new { style = "width: 400px; height: 200px;" }
)

, но гораздо лучшим решением будет украсить свойство модели Headline view с атрибутом [DataType], указав, что вы хотите, чтобы оно отображалось какa <textarea>:

public class MyViewModel
{
    [DataType(DataType.MultilineText)]
    public string Headline { get; set; }

    ...
}

, а затем используйте помощник EditorFor:

<div class="headline">
    @Html.EditorFor(model => model.Headline)
</div>

и, наконец, в своем файле CSS укажите его стиль:

div.headline {
    width: 400px;
    height: 200px;
}

Теперь у вас есть правильное разделение проблем.

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