如何滚动到scrollviewer中的第n项

时间:2012-11-21 10:50:14

标签: c# xaml scrollview

我正在为Windows 8编写一个应用程序作为大学项目。 我所拥有的如下:

<ScrollViewer Background="Green" Name="readingSV"  Grid.Column="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" BorderBrush="Black" BorderThickness="1" Padding="15" VerticalScrollBarVisibility="Hidden" VerticalScrollMode="Auto" HorizontalScrollMode="Disabled">  
    <StackPanel Orientation="Vertical"  Name="readingSP">  
        <TextBlock Name="tb1" />  
        <TextBlock Name="tb2" />  
        <TextBlock Name="tb3" />  
        <TextBlock Name="tb5" />  
        <TextBlock Name="tb6" />  
        <TextBlock Name="tb7" />  
        <TextBlock Name="tb8" />  
        <TextBlock Name="tb9" />  
        <TextBlock Name="tb10" />  
        <TextBlock Name="tb11" />  
        <TextBlock Name="tb12" />  
        <TextBlock Name="tb13" />  
        <TextBlock Name="tb14" />  
        <TextBlock Name="tb15" />  
    </StackPanel>  
</ScrollViewer>  

我想查看scrollviewer以调整到第n个项目,例如加载时的tb15 ......

我尝试过寻求帮助但找不到易于理解的答案

我实际上是在代码隐藏中创建文本块并将它们添加到stackpanel中,在scrollviewer中,textblocks将填充一本书中的文本行,比如说每行一个文本块。

1 个答案:

答案 0 :(得分:0)

有点数学...... 在所有要素都到位之后。我计算了滚动查看器的总高度,并根据实际高度计算了文本框的位置。