You all bring up a lot of valid points in favor of uniforms.
I was actually exposed to both extremes - uniforms in Catholic school, then I transferred to a public school where there was no dress code at all (at least, not one that was enforced). People did show up dressed like hookers

and in some circles you had to have the "right" clothes to be accepted.
This is why I favor dress codes - a middle-of-the-road approach. The kids can be comfortable while also being dressed appropriately for school. You might even take it a step further and get more specific on the brands of acceptable clothes - sort of a "uniform" with more options - which would address the income issue, at least somewhat.
At a bare minimum, the outfits should be nicely designed, and there should be a warm-weather and cool-weather option. Sitting in a green-and-brown-plaid wool pinafore, blouse, tie, and wool knee-high socks in an un-airconditioned classroom in 90-degree heat is NOT FUN - especially when you have to look at your teacher who is wearing a nice lightweight cotton dress or suit!