0

我有一个WrapPanel放置在网格中并用ToggleButtons.
所在行的高度是根据组件中wrappanel的个数来计算的。ToggleButtonsWrapPanel

当我加载屏幕时,其中的项目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>
4

2 回答 2

0

试试这个。UpdateLayout();

于 2010-06-25T09:06:24.667 回答
0

您可以调用InvalidateArrange()InvalidateMeasure()来强制 WPF 重做适当的布局阶段。

于 2010-06-25T10:42:17.327 回答