I'll often use this:
<StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Username:</Label>
<TextBox />
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Password:</Label>
<PasswordBox />
</StackPanel>
</StackPanel>
But it is such a common scenario, I feel like there is a way with less markup.
Also, is there a performance impact of using so many stack panels?