Question

I'm creating a generic interface for editing pages and on some pages eg the start page I need to disable or remove some fields. The form is rendered with Html.EditorFor. What is the best way of doing this?

Was it helpful?

Solution

You could write a custom editor template for the given type (string, decimal, object, ...):

@model string
@Html.TextBox(
    "", 
    ViewData.TemplateInfo.FormattedModelValue,
    ViewData
)

and then:

@Html.EditorFor(x => x.Foo)

or in views where you want it to be disabled:

@Html.EditorFor(x => x.Foo, new { disabled = "disabled" })
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top