0

基本的に、私は次のような複数のエディターを含むテーブルを持っています。

<table>
<tr>
<td>@Html.EditorFor(x => x.Random1)</td>
<td>@Html.EditorFor(x => x.Random2)</td>
</tr>
<tr>
<td colspan="2">@Html.EditorFor(x=> x.Random3)</td>
</tr>
</table>

さて、私の問題は、おそらくcolspan = "2"からすでに理解しているように、3番目のテキストボックスを2つの列全体に拡張したいということです。通常のHTMLでは、当然、width属性を追加するだけです。DataType.MultilineTextエディターの幅を変更できるようなDataAnnotationはありますか?他のアイデアはありますか?

更新:EditorForではなくTextBoxForに変更すると、実際にを追加でき@Html.TextBoxFor(x => x.Random, new { style = "width: 500px;" })ます。
唯一の問題は、別のテキストボックス(random4としましょう)があり、それがどういうわけかDataAnnotation MultilineTextをオーバーライドして、プレーンな500pxのテキストボックスにしていることです。病気はCSSを掘り下げる必要があると思います:(

4

3 に答える 3

1

この質問に対する回答のいくつかが役立つ場合があります。

テンプレートの良いところは、テンプレートの動作が気に入らない場合は、独自の実装をドロップインするだけでよいことです。

CSSを使用して、IDに基づいてコントロールの幅を指定することもできます。

于 2011-07-26T11:13:23.387 に答える
0

最も簡単な解決策は、cssでコントロールのスタイルを設定することです。random3 textboxの悪用input[type="text"]{width:1px}、およびrandom4 multilinetextの悪用は、単に使用するtextarea{width:1px}

于 2011-07-26T12:28:51.067 に答える
-1

モデルのプロパティ - この場合は Random3 で注釈を付けます

public class ViewModelName
{
    [DataType(DataType.MultilineText)]
    public string Random3 { get; set; }
}

次に、Html.EditorFor(x => x.Random3) ができると、複数行にする必要があることがわかります

于 2011-07-26T10:58:19.300 に答える