如何在Windows Phone中的RichTextBlock中实现滚动

时间:2015-03-23 17:09:56

标签: c# xaml windows-phone win-universal-app

我有一个Windows Phone Universal应用程序,其RichTextBlock动态加载其内容。有时内容很短,有时候太长而无法放入页面;因此,我希望RichTextBlock能够动态扩展,并让用户能够滚动查看整个内容。

我环顾四周(这里和其他地方)寻找实现这一目标的代码,但并不是很成功。我得到的最接近的代码是不起作用

<ScrollViewer Width="Auto" Height="Auto" VerticalScrollBarVisibility="Visible" VerticalScrollMode="Enabled">
    <RichTextBlock FontSize="20" Foreground="White" IsTextSelectionEnabled="False" Margin="12,0" ScrollViewer.VerticalScrollBarVisibility="Visible">
        <Paragraph>
            Place a very long text here.
        </Paragraph>
    </RichTextBlock>
</ScrollViewer>

感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

这将有效:

<ScrollViewer Height="150" Width="150">
    <RichTextBlock>
        <Paragraph>This is my RichTextblock</Paragraph>
    </RichTextBlock>
</ScrollViewer>

这里的诀窍是修复Height和/或Width(取决于您想要滚动的方向)。

回到问题中的例子;它所需要的只是一个绝对值;例如,Height="480"

<ScrollViewer Width="Auto" Height="480" VerticalScrollBarVisibility="Visible" VerticalScrollMode="Enabled">
    <RichTextBlock FontSize="20" Foreground="White" IsTextSelectionEnabled="False" Margin="12,0" ScrollViewer.VerticalScrollBarVisibility="Visible">
        <Paragraph>
            Place a very long text here.
        </Paragraph>
    </RichTextBlock>
</ScrollViewer>