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

How to implement scrolling in a RichTextBlock in Windows Phone

我有一个 Windows Phone 通用应用程序,它有一个 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>

感谢任何帮助。

这会起作用:

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

这里的技巧是修复 Height and/or 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>