As for wearing the same pair of pants to dinner every night, I have no problem with that.
Consider: at home my husband gets dressed around 6:30 AM. He wears his pants to work all day and -- unless he's mowing the lawn or fixing something around the house -- he wears the same pair until 9:00 or 10:00. So he's wearing that pair of pants for around 15 hours. During that time he's indoors, outdoors, in the car, sitting here and there -- the pants are exposed to plenty of places where he might get dirty. Yet no one would say he's dirty because he doesn't change pants at noontime.
On the ship, he'd wear shorts all day and change for dinner. He'd probably wear his dinner pants for no more than three hours. Additionally, he'd be sitting in one place for the great majority of that time -- with a napkin over his lap! Not much difference.