Html.XxxFor
expects a lambda expression that selects a property from the model. This is used to identify the property of the model which will be edited.
What you're trying to achieve is probably what you can do with an editor template.
Interesting articles on editor templates and their implementation:
- Quick Tips About ASP.NET MVC – Editor Templates
- Brad Wilson: ASP.NET MVC 2 Templates, Part 1: Introduction
In the second article you can see that if you have a custom class with the data you want to edit, you can create a template which is automatically used for your editor if you give it the right name and save it in the right place. You can make a class with a single field and include it in your model instead of the original property. This also allows to edit several properties at once (declaring a class with those properties)
Othe option would be a custom html helper:
- Creating Custom HTML Helpers (NOTE: this technique will work perfectly with C#/Razor syntax)