滚动条不会滚动到标签页的顶部

时间:2016-02-07 11:24:05

标签: c# winforms scrollbar tabpage toolstrip

我的tabPage有一个奇怪的行为。首先 - 在初始化表单时,我使用以下代码:

 tabPage3.VerticalScroll.Value = 0;

然而它看起来像这样:

scrollbar position

图像中的白线是工具条,因此滚动条只会向上滚动到工具条的底部。 现在,当我将代码行放入tabPage的Paint事件时,它的工作原理(滚动条位于我的tabPage的最顶层)。但是,我再也无法将滚动条向下移动 - 每次我想移动它时它会跳回到顶部。我尝试了不同的条件,比如在输入标签页时设置一个值,或者在页面的滚动事件中设置一个值,以便在paint事件中只使用一次代码,但结果会产生如图所示的行为。

我该如何解决这个问题? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用tabControl的Selectedindexchanged事件,而不是使用tabPage的onPaint事件。在那里,您可以在每次显示TabPage 3时将Scrollbarvalue设置为0。您的代码看起来就像那样。

private void TabControl1_SelectedIndexChanged(Object sender, EventArgs e)
{
  if(tabControl1.SelectedTab = tabPage3)
  {
    tabPage3.VerticalScroll.Value = 0;
  }
}