2

我有一个用户控件,可以在OnRender. 那个Height控制的逐渐增长。

我将此控件添加到ScrollViewer. 该控件仅重绘当前可见区域 ( viewport)(+/- 用于更平滑滚动的视图线)。到目前为止一切正常...

但是由于控件通常会增长到几十万像素,所以我希望Height控件的 尽可能小,并提供一个不同的Height值来绑定到ScrollableHeightScrollViewer同样适用VerticalOffset)。但是没有设置器ScrollableHeight。它自动绑定到我的控件的高度。我也不能覆盖高度。

如何自定义我的ScrollViewer(或VerticalScrollbar)以保持Height我的控制的真实性很小?

4

1 回答 1

1

我过去做过类似的事情。您需要做的是编写自己的布局Panel并在其中实现IScrollInfo。接口看起来很大,但大部分只是调用其中一个主要的 set 方法。布局器需要设置一些IScrollInfo属性,例如等ExtentHeightOffset这些是您自定义如何ScrollViewer计算滚动位置和“虚拟”画布大小的可滚动区域的方式。为了实现IScrollInfo我使用教程作为指导。

于 2013-04-17T12:43:22.753 回答