Header
(레이블) 및 Content
(텍스트 상자) 속성을 지정할 수있는 내장형 HeaderedContentControl
을 사용하는 것이 더 좋은 옵션이라고 말하고 싶습니다.
이
<Style x:Key="MyLabelledItemStyle" TargetType="HeaderedContentControl">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="HeaderedContentControl">
<StackPanel Orientation="Horizontal">
<ContentControl Content="{TemplateBinding Header}" Margin="2" />
<ContentControl Content="{TemplateBinding Content}" Margin="2" />
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
이 예는 단지 수평으로 StackPanel
에 두 개의 구성 요소를 연결합니다,하지만 당신은 필요한 경우 더 복잡한 뭔가를 할 수 :
그런 다음 모양을 변경하기 위해 HeaderedContentControl
에 대한 ControlTemplate
을 지정할 수 있습니다.
그런 다음 다음과 같이 XAML에서 이것을 사용할 수 있습니다
<HeaderedContentControl Style="{StaticResource MyLabelledItemStyle}" Header="First Name">
<TextBox Text="{Binding FirstName}" />
</HeaderedContentControl>