2010-12-05 1 views
6

내 체크 박스 너비가 포함 된 격자 셀의 범위까지 늘어나는 것 같습니다. 따라서 체크 상자 레이블의 오른쪽에있는 방법을 확인해도 값은 계속 토글됩니다. 확인란의 폭 값을 하드 코딩하지 않고 레이블이나 확인란을 클릭 할 때만 확인란을 전환하는 방법이 있습니까?레이블 외부에서 클릭했을 때 wpf 체크 박스가 선택됨

답변

4

열 정의 너비를 "자동"으로 설정하면 열의 크기가 CheckBox에 맞게 조정됩니다.

그러나 레이아웃이 망가질 수 있습니다.

대체 방법은 CheckBoxStackPanel에 두는 것입니다. 첫 번째 스크린 샷에서 볼 수 있듯이 두 번째 같이 컬럼의 전체 너비 인 반대

<Grid Margin="10,10,10,10" Name="grid1"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*"/> 
      <ColumnDefinition Width="*"/> 
      <ColumnDefinition Width="*"/> 
     </Grid.ColumnDefinitions> 
     <TextBlock Text="Hello"/> 
     <StackPanel Grid.Column="1" Orientation="Horizontal"> 
      <CheckBox Content="Click Me"/> 
     </StackPanel> 
     <Button Grid.Column="2" Content="Press Me"/> 
    </Grid> 

CheckBox의 경계 상자는 체크 및 레이블 주위에 지금이다.

올바른 행동 :
correct behaviour
잘못된 행동 : 체크 박스 HorizontalAlignmentStretch입니다
incorrect behaviour

3

정말 넓게 펼칠 수 있습니다. CheckBox에 배경을 적용 해보십시오. 실제로 얼마나 넓은 지 보여줍니다. 또한 HorizontalAlignment로 재생합니다.

4

기본. Left/Right/Center으로 설정하십시오.

관련 문제