MVC3 Razor Html.TextBoxFor: Kann ich es machen das Multi-Line wie TextAreaFor?

Ich habe schon gesehen, dieser Beitrag: Ändern der Größe von Html.TextBox

Aber ich kann nicht ändern, zu Html.TextAreaFor() weil Sie nicht über ein Attribut für mich einen dynamischen Standardwert (ich mache eine Seite Bearbeiten möchte ich dynamisch füllen Sie die Felder der aktuellen Daten, die dann modifiziert werden). Ich kann auch nicht scheinen, um die "EditorFor" zu arbeiten, auch wenn ich auf die [DataType(DataType.MultilineText)] in meinem viewmodel (alle es tut, es scheinen, zu ändern, zu textboxfor und mein Standard-Werte nicht auftauchen).

Meiner Ansicht Bearbeiten wird ein viewmodel enthält zwei Modelle, ein leeres Formular (OfferForm) gefüllt werden mit den angezeigten Feldern, und die offer Modell mit den aktuellen Daten. Ich möchte die Textfelder für die OfferForm und dynamisch füllen Sie mit dem Inhalt der offer Modell die Daten.

Hier ist mein html:

<div class="InLine">
                    <div class="InLine editor-label-container">
                        <div class="editor-label">
                            @Html.LabelFor(model => model.OfferForm.Description)
                        </div>
                    </div>
                    <div class="InLine editor-field-container">
                        <div class="editor-field">
                            @Html.TextBoxFor(model => model.OfferForm.Description, new { @Value = @Html.DisplayFor(model => model.Offer.Description)})
                            @Html.ValidationMessageFor(model => model.Offer.Description)
                        </div>
                    </div>
                </div>
                <div class="InLine">
                    <div class="InLine editor-label-container">
                        <div class="editor-label">
                            @Html.LabelFor(model => model.OfferForm.SMSText)
                        </div>
                    </div>
                    <div class="InLine editor-field-container">
                        <div class="editor-field">
                            @Html.TextBoxFor(model => model.OfferForm.SMSText, new { @Value = @Html.DisplayFor(model => model.Offer.SmsText)})
                            @Html.ValidationMessageFor(model => model.Offer.SmsText)
                        </div>
                    </div>
                </div>

Gibt es eine Möglichkeit ein " multiline " - Attribut in der Html.TextBoxFor()?

  • Warum sind Sie auf der Suche um die value Eigenschaft. Im Fall der text-Bereich der value ist, was sich innerhalb des html-Elemente. Für Ihre Beispiele, die Sie nicht benötigen, um die value-Eigenschaft entweder die TextBoxFor oder die TextAreaFor als wenn Sie die Html.* Helfer es füllt automatisch den Wert.
  • Der Grund, ich brauche, um die Value ist denn der Wert ist nicht gefüllt, aus dem Modell, für das ich bin mit TextBoxFor oder TextAreaFor (ie. die leere OfferForm). Stattdessen ist er bevölkert von einem zweiten Modell in meinem ViewModel (ie. die Bieten).
  • Ah, ich sehe. sehr subtile Namensgebung Unterschied.
InformationsquelleAutor Evan Layman | 2011-07-19
Schreibe einen Kommentar