Silverlight NaN высота и ширина, ActualHeight и ActualWidth также возвращают 0.0 - какой обходной путь? - PullRequest
1 голос
/ 08 ноября 2010

popUpControl и listBoxControl ниже возвращают 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 ]

5 голосов
/ 08 ноября 2010

Чтобы обновить ActualWidth и ActualHeight FrameworkElement, вам нужно будет позвонить UpdateLayout.

надеюсь, это кому-нибудь поможет.

0 голосов
/ 08 ноября 2010

в WPF и silverlight, ширина и / или высота NaN означает «Авто», то, что вы, вероятно, должны смотреть (и привязывать), вместо этого - ActualWidth и / или ActualHeight

...