编程语言
首页 > 编程语言> > c# – 在ContentDialog中滚动Richtextblock

c# – 在ContentDialog中滚动Richtextblock

作者:互联网

在我的UWP应用程序中,我在ContentDialog中有一个RichTextBlock,我为每个元素设置了一些样本高度,以检查它是否有效.

我确定RichTextBlock里面的内容比height = 100还高,但我不能向上或向下滚动!

我该如何解决?

<ContentDialog ...>
 <ScrollViewer  Height="100">
    <StackPanel Height="100">
        <RichTextBlock x:Name="richBox" Height="100">
            <Paragraph>
                <Bold>Release info:</Bold>
                <LineBreak/>
                <Run Text="{x:Bind txt[1]}"/>
            </Paragraph>
            <Paragraph>
                <Bold>A commentary by:</Bold>
                <Run Text="{x:Bind txt[2]}"/>
            </Paragraph>
            <Paragraph>
                <Bold>details:</Bold>
                <LineBreak/>
                <Run Text="{x:Bind txt[3]}"/>
            </Paragraph>
        </RichTextBlock>
    </StackPanel>
 </ScrollViewer>
</ContentDialog>

Contentdialog can't scroll

解决方法:

尝试删除StackPanel和RichTextBlock中的高度定义.

<ContentDialog ...>
 <ScrollViewer Height="100">
    <StackPanel>
        <RichTextBlock x:Name="richBox">
            <Paragraph>
                <Bold>Release info:</Bold>
                <LineBreak/>
                <Run Text="{x:Bind txt[1]}"/>
            </Paragraph>
            <Paragraph>
                <Bold>A commentary by:</Bold>
                <Run Text="{x:Bind txt[2]}"/>
            </Paragraph>
            <Paragraph>
                <Bold>details:</Bold>
                <LineBreak/>
                <Run Text="{x:Bind txt[3]}"/>
            </Paragraph>
        </RichTextBlock>
    </StackPanel>
 </ScrollViewer>
</ContentDialog>

如果子节点与父ScrollViewer具有完全相同的高度,则后者无需滚动,因此不会提供滚动条.通常,您不需要为ScrollViewer的子元素指定 – 当子元素高于ScrollViewer时,滚动条将显示;否则它不会.

标签:c,xaml,windows-10,winrt-xaml,windows-8-1
来源: https://codeday.me/bug/20190706/1399242.html