【发布时间】:2016-02-07 11:24:05
【问题描述】:
我的 tabPage 有一个奇怪的行为。首先 - 初始化表单时,我使用以下代码:
tabPage3.VerticalScroll.Value = 0;
然而它看起来像这样:
图像中的白线是工具条,因此滚动条只会向上滚动到工具条的底部。 现在,当我将代码行放入 tabPage 的 Paint 事件中时,它可以工作(滚动条位于 tabPage 的最顶部)。但是,我不能再向下移动滚动条——每次我想移动它时它都会跳回顶部。我尝试了不同的条件,例如在进入标签页时或在页面的滚动事件中设置一个值,以便在绘制事件中只使用一次代码,但随后会导致如图所示的行为。
我该如何解决这个问题? 提前致谢!
【问题讨论】:
-
Paint 事件运行很多。每次需要重新绘制控件时。所以你放在那里的代码会经常执行。如果那里有重置滚动条位置的代码,则无法滚动。无论如何,完全没有必要将滚动条的值“初始化”为 0。这是默认位置(在顶部或一直到左侧,具体取决于滚动条的方向)。
-
好的,但是为什么在绘制事件中它可以正常工作(取决于位置)?如何实现滚动条的位置在工具条的最顶部?
标签: c# winforms scrollbar tabpage toolstrip