2010-06-25 5 views
0

나는 WrapPanel을 그리드에 배치하고 동적으로 ToggleButtons으로 채 웁니다.
wrappanel이있는 행의 높이는 WrapPanel 구성 요소에있는 ToggleButtons의 수를 기준으로 계산됩니다.WPF : wrappanel을 다시 레이아웃하는 방법은 무엇입니까?

화면을로드 할 때 wrappanel의 항목이 올바르게 배치되지 않았습니다. 그러나 양식의 크기를 조정하면 항목이 올바르게 표시됩니다.

양식의 크기를 조정할 때처럼 항목을 다시 레이아웃 할 수있는 방법이 있습니까? 내 WPF 코드를 볼 수 있습니다

:

<Grid x:Name="grdScreen"> 
    <Grid.RowDefinitions> 
     <RowDefinition x:Name="rdToolBar" Height="21" /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 
    <Grid Grid.Row="0"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="150" /> 
      <ColumnDefinition Width="150" /> 
      <ColumnDefinition /> 
     </Grid.ColumnDefinitions> 
     <ToggleButton Grid.Column="0" Name="btnlegende" Margin="1,1,11,1" Click="btnlegende_Click" /> 
     <Button Grid.Column="1" Name="btnlayout" Margin="1" Click="btnlayout_Click" /> 
     <WrapPanel x:Name="pnlHeader" Grid.Column="2" /> 
    </Grid> 
... 
</Grid> 

답변

0

는 this.UpdateLayout()을 시도;

+0

컨트롤이 동적으로 추가 된 후이 코드를 추가하십시오. – Ragunathan

+0

나는 이미 그것을 시도했다. 심지어 pnlHeader.upateLayout(). 작동하지 않습니다. – user376040

+0

그냥 Wrap 패널 코드를 별도로 usercontrol에 넣어보십시오. – Ragunathan