WPF ScrollView和TextBlock

时间:2016-09-06 02:24:42

标签: c# wpf xaml scrollview textblock

我做错了什么?

以下代码有效:

<ScrollViewer x:Name="scrollChatMessages">
    <TextBlock x:Name="txtChatMessages" TextWrapping="Wrap"/>
</ScrollViewer>

但是一旦我与设计师联系起来让它看起来更整洁并且不会占据整个网格,ScrollView就不再滚动Scrollblock的内容了:

<ScrollViewer x:Name="scrollChatMessages" HorizontalAlignment="Left" Height="181" Margin="95,10,0,0" VerticalAlignment="Top" Width="300">
    <TextBlock x:Name="txtChatMessages" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Top" Height="181" Width="300"/>
</ScrollViewer>

有人可以向我解释这种行为吗?

提前致谢!

2 个答案:

答案 0 :(得分:1)

我把它放在一个网格里解决了。

<Grid x:Name="gridChatMessages" HorizontalAlignment="Left" Height="181" Margin="95,10,0,0" VerticalAlignment="Top" Width="300">
    <ScrollViewer x:Name="scrollChatMessages">
        <TextBlock x:Name="txtChatMessages" TextWrapping="Wrap"/>
    </ScrollViewer>
</Grid>

答案 1 :(得分:1)

没有好Minimal, Complete, and Verifiable code example,我们无法肯定地说出来。但是你可以看到Designer为这两个元素添加了一堆新的属性值。特别是,ScrollViewerTextBlock已设置为具有相同的宽度和高度。

当然,由于所包含的元素具有完全正确的尺寸以适合ScrollViewer,因此无需滚动查看所有内容。您需要从Width中删除HeightTextBlock属性值。