【问题标题】:WPF: ScrollViewer total content heightWPF:ScrollViewer 总内容高度
【发布时间】:2016-11-21 23:01:23
【问题描述】:

我正在开发 WPF 应用程序。这是我的界面:

<ScrollViewer x:Name="ScrollView" CanContentScroll="True">
      <RichTextBox Padding="10" x:Name="TextArea" Background="Transparent" Opacity="0.95" />    
</ScrollViewer>

我想将一个文本文件加载到 RichTextBox 中,该文件大于屏幕的大小,然后找出滚动查看器内容的总大小(即我实际可以滚动多远)。在文档中它说:

ScrollViewer.ExtentHeight 属性

表示范围垂直大小的 Double。默认 是 0.0。

如果 CanContentScroll 为 true,则 ExtentHeight 的值, ScrollableHeight、ViewportHeight 和 VerticalOffset 属性是 东西的个数。如果 CanContentScroll 为 false,则这些值 属性是与设备无关的像素。

如果理解正确,文档是说如果CanContentScrolltrueExtentHeight 应该以内容大小为单位给出我的内容高度。我的 RichTextBox 是滚动视图的内容。因此,例如,如果我的 RichTextBox 长 1000 像素,并且在屏幕上可见 500 像素,那么 ExtentHeight 应该是 2。但是,当我加载一个空的 RichEditBox 时,它完全适合 ScrollViewer 而无需滚动,并且ActualHeight 等于 567,ExtentHeight 等于 37.96,这对我来说毫无意义。我希望是否等于 1 或小于 1。那么如何找到 ScrollViewer 中 TextBox 的总内容大小。

【问题讨论】:

    标签: c# wpf windows xaml scrollviewer


    【解决方案1】:

    我认为我的问题的原因是我在 ScrollViewer 中有我的 RichTextBox。 RichTextBox 有它自己的滚动功能,并且通过将其粘贴在 ScrollViwer 中,一切都变得混乱了。所以我摆脱了 ScrollViewver,只使用了 RichTextBox 和它的 HeightExtent 属性。

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 2011-02-28
      • 1970-01-01
      • 2015-04-07
      • 2011-12-09
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      相关资源
      最近更新 更多