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

InvalidateArrange()またはInvalidateMeasure()を呼び出して、WPF に適切なレイアウト フェーズを強制的にやり直すことができます。

于 2010-06-25T10:42:17.327 に答える
0

これを試してください.UpdateLayout();

于 2010-06-25T09:06:24.667 に答える