2011-10-25 11 views
5

tengo un ayudante html:MVC3 HTML Helper para gran área de texto

@Html.EditorFor(model => model.Description) 

Pero es demasiado pequeño para los datos en que la propiedad de mi modelo. Descriptino es una cadena de 1000 caracteres. Necesito que el usuario pueda ingresar varias líneas de texto y envolverlo en el objeto HTML. ¿Cómo hago esto?

+0

¡Esto es tan simple! Puedes aprender muchas cosas de intellisense de VisualStudio. Sin embargo, @Javad_Amiry proporciona una gran respuesta para una simple pregunta. Genial y perfecto –

Respuesta

25

Trate

Html.TextAreaFor(model => model.Description, new {@cols="80" , @rows="4" }) 
+0

@Gyocol ... gracias. – MikeTWebb

+0

De nada Mike. Me alegro de poder ayudar :) – Gyocol

6

Uso:

@Html.TextAreaFor(model => model.Description) 

// or a full option-list is: 
@Html.TextAreaFor(model => model.Description, 
    rows, // the rows attribute of textarea for example: 4 
    columns, // the cols attribute of textarea for example: 40 
    new { }) // htmlAttributes to add to textarea for example: @class = "my-css-class" 

Aviso: puede utilizar en lugar de nullnew { } para htmlAttributes pero no es recomendable! Se recomienda encarecidamente utilizar un new { } en blanco -que representa un new object -

+0

Una gran respuesta para una simple pregunta. Fresco y perfecto –

+0

De nada: D –

1

Usted puede utilizar EditorFor, pero en ese caso es mejor definir su propio EditorTemplate para la prestación de su TextArea, utilizando TextAreaFor o lo que sea necesario.

La principal diferencia entre el TextAreaFor y EditorFor es que, si he entendido bien cómo funciona todo, cuando se utiliza EditorFor, plantillas se tienen en cuenta, mientras que cuando se utiliza TextAreaFor se elige la entrada HTML que se utiliza para la representación.

Las plantillas parecen interesantes, recién estoy empezando a escribir las mías.

+0

+1 Fresco y perfecto –

Cuestiones relacionadas