2012-04-21 3 views

答えて

9

EditorForは、データ型に関連付けられたエディタをレンダリングしようとする利点があります。例えば

:あなたがあなた自身のEditor Templatesをデザインする場合、それらは自動的に便利なエディタテンプレートは、プロパティの型がDateTimeときに日付ピッカーを生成1であるかもしれないプロパティのタイプやUIHint

に基づいてレンダリングされます。

も同様TextBoxForとPasswordForを使用してMultilineText

でプロパティをタグ付けするとき、それは<textarea>をレンダリングする際に「スマート」EditorForは、そのような例があるプロパティの「最良」のエディタを生成する場所をいくつかの他のシナリオがあります特別な編集者を必要としない場合には完璧です。 HtmlAttributesを設定する必要があるときに、人生を単純化することさえできます。 EditorForはタイプとメタ情報を見て、 別のコントロールまたはテンプレートをレンダリングすることができますが、これについて明確な疑問について

+0

私は両方の答えに感謝したいと思います。これらはすべてをクリアしました。私は、私が指摘されている2つのリンク、素晴らしい情報のためにこの答えを受け入れました。 –

6

参考Differences between Html.TextboxFor and Html.EditorFor in MVC and Razor ...

HtmlTextboxForは常にtextbox (<input type="text" ...).

を作成しますあなたは供給します。

たとえば、DateTimeプロパティの場合、 がjQuery DatePickerを使用するテンプレートを作成できます。

あなたのテキストボックスは、あなたは、単にカスタムエディタテンプレート(~/Views/Shared/EditorTemplates/string.cshtml)を書くことができ、アプリケーション内のすべてのテキストボックスが自動的に対し、この変更の恩恵を受けるのdivでそれらを包むようにレンダリングされているかの側面に何かを変更することにした場合Html.TextBoxForをハードコードしている場合は、どこでも変更する必要があります。

関連する問題