I'm curious which is the best method of showing around 20 text boxes , each with their own label. Best as in, most efficient (performance wise).

1) Have 20 seperate labels + 20 seperate text boxes (build the app using the standard controls, possibly using the panel to assist in lining them up)

2) Create a user control with a text box + label, then use this control 20 times.

3) Create 1 big user control with everything together.

My program will look like:

input description - [text box]
input description - [text box]
input description - [text box]
input description - [text box]
input description - [text box]
input description - [text box]
input description - [text box]

output description - [read-only text box]
output description - [read-only text box]
output description - [read-only text box]
output description - [read-only text box]
output description - [read-only text box]
output description - [read-only text box]

The likelihood of adding more fields at a later time is slim to none, and if I did, I really wouldn't mind re-designing the control (if I went with option #3), because the program would need to be recompiled anyways.

Most of the text boxes will require a different type of validation too (float, double, int, max length, etc.), but visually each one will be the same size.