For complex items you need to index your collections for the model binder.
Change your loop to this which will be picked up by the model binder (without seeing your view or model I am using Field
for demo purposes here).
@for (int i = 0; i < Model.Count; i++)
{
.....
@Html.EditorFor(model => Model[i].Field)
.....
}
They will then be posted back to the server.
For more info on it see here:
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx/