1

popUpControllistBoxControl以下NaN以高度和宽度返回。也是ActualHeight0.0

为什么?更重要的是,解决方法是什么?

<Popup Name="popUpControl" IsOpen="True" VerticalAlignment="Top" HorizontalAlignment="Left" >
    <ListBox Name="listBoxControl" SelectionChanged="_ListBox_SelectionChanged"
            Style="{StaticResource ListBoxStyle}" BorderBrush="Transparent"
             MaxHeight="300" MaxWidth="350" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal" >
                    <TextBlock Text="{Binding ID}" VerticalAlignment="Center" Margin="2,0,0,0" />
                    <TextBlock Text="{Binding Name}" VerticalAlignment="Center" Margin="2,0,0,0" />
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
</Popup>
4

2 回答 2

5

要更新 FrameworkElement 的ActualWidthand ActualHeight,您必须调用UpdateLayout.

希望这可以帮助某人。

于 2010-11-08T05:36:25.257 回答
-1

在 WPF 和 silverlight 中,NaN 的宽度和/或高度表示“自动”,您可能应该查看(并绑定到)而不是 ActualWidth 和/或 ActualHeight

于 2010-11-08T04:54:04.503 回答