2

我对 Horizo​​ntalOffset 属性的设置有疑问(使用 ScrollToHorizo​​ntalOffset 方法)。

在启动我的应用程序时,滚动查看器的内容是动态创建的(即我在设计时不知道它的范围)。然后我想设置滚动查看器控件的水平偏移量,但是当时它的可滚动宽度返回为 0。在滚动查看器上调用 UpdateLayout 也无济于事。

我目前正在通过在呈现事件中检查滚动查看器控件的 ScrollableWidth 属性来解决此问题,并在 ScrollableWidth > 0 时立即调用 ScrollToHorizo​​ntalOffset。

这可以正常工作,但会导致在“渲染”位置调整之前短暂显示错误的初始位置。

我可以做些什么来强制更新滚动查看器,以便我可以设置它的水平偏移而没有这个麻烦?

提前致谢!

4

2 回答 2

3

将滚动查看器中 Content 控件的不透明度设置为 0。当您调用 ScrollToHorizo​​ntalOffset 后,将内容控件的不透明度设置为 1。这样,在正确定位之前实际上看不到任何内容。

于 2010-01-06T12:31:11.587 回答
2

在加载子内容之前,可滚动的高度/宽度将为零。在那之前,它不知道它需要多大——因此值为 0。

于 2011-01-10T07:35:32.670 回答