silverlight NaN的高度和宽度,ActualHeight和ActualWidth也返回0.0 - 解决方法是什么?

时间:2010-11-08 04:46:36

标签: wpf silverlight xaml actualwidth actualheight

下面的

popUpControllistBoxControl返回NaN作为高度和宽度。 ActualHeight也是0.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>

2 个答案:

答案 0 :(得分:5)

要更新FrameworkElement的ActualWidthActualHeight,您必须致电UpdateLayout

希望这有助于某人。

答案 1 :(得分:-1)

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