OK so I ended up just manually reordering the controls list on the custom code-behind page like so:
Control date_filter = FilterRepeater.Controls[1];
FilterRepeater.Controls.RemoveAt(1);
FilterRepeater.Controls.Add(date_filter);
Of 3 controls on the page this takes the 2nd out and adds it onto the end.
If I need to use again I might create a method and search on control name.
This is a crude solution but it suits me for this one off scenario. If anyone finds a better way let me know.
OK better way:
- Install this: http://nuget.org/packages/NotAClue.DynamicData.Extensions
- Add reference "using NotAClue.ComponentModel.DataAnnotations;" if you are using a separate entity page
- Add [Filter(Order=1)] metadata tags to attributes