Получите высоту ScrollViewer в Windows Phone

У меня возникли проблемы с ScrollViewer в моем приложении Windows Phone (универсальное приложение).

У меня есть ScrollViewer, как показано ниже:

            <ScrollViewer x:Name="myScrollViewer" Grid.Row="1">
            <StackPanel>

                <TextBlock x:Name="myText"
                           Margin="12"
                           FontSize="30"
                           Text="Lorem Ipsum is simply dummy text of the printing and typesetting industry."
                           TextWrapping="Wrap"
                           />        
                <Rectangle Height="140"
                           Width="400"
                           Fill="Blue"
                           Margin="12"
                           />
                <Rectangle Height="140"
                           Width="400"
                           Fill="Red"
                           Margin="12"
                           />                                        
            </StackPanel>
        </ScrollViewer>

Теперь я пытаюсь получить высоту этого ScrollViewer. В коде позади (внутри конструктора) я пробовал:

double d = myScrollViewer.ActualHeight;

double d = myScrollViewer.ScrollableHeight;

double d = myScrollViewer.Height;

Я также пробовал другие методы, соответствующие высоте, чтобы получить высоту ScrollViewer. Но в каждом случае я получал NULL или 0 в d. Есть ли способ вернуть фактическую высоту или рабочую высоту ScrollViewer?


person Tanvir Sourov    schedule 29.06.2014    source источник
comment
Что означает «В моем коде в конце cs»? Когда вы пытаетесь получить высоту?   -  person Igor Ralic    schedule 30.06.2014


Ответы (1)


Вы должны иметь возможность получить ActualHeight любого элемента фреймворка после события Loaded страницы. ActualHeight и ActualWidth не устанавливаются во время конструктора или до тех пор, пока элемент управления не будет динамически рассчитан/измерен и т. д.

person Adil    schedule 29.06.2014
comment
Большое спасибо. Это помогло. - person Tanvir Sourov; 30.06.2014