2009-10-22 22 views
0

我有一個用戶控件,我想定製滾動。 我可以使用已經內置的水平和垂直滾動條而不將AutoScroll標誌設置爲true嗎? 我可以啓用和定義兩個滾動條的最小值和最大值,我可以在我的控件上看到它們,但是當單擊按鈕時,它們不會移動,並且在滾動事件中我沒有得到任何有用的值。在.Net控件上使用自定義滾動條的任何簡單方法

  HorizontalScroll.Value = 0; 
      VerticalScroll.Value = 0; 
      HorizontalScroll.Minimum = 0; 
      HorizontalScroll.Maximum = 900; 
      VerticalScroll.Minimum = 0; 
      VerticalScroll.Maximum = 600; 
      HorizontalScroll.Visible = true; 
      VerticalScroll.Visible = true; 
      HorizontalScroll.SmallChange = 2; 
      HorizontalScroll.LargeChange = 4; 
      HorizontalScroll.Enabled = true; 
      VerticalScroll.Enabled = true; 
      this.Scroll += new ScrollEventHandler(PanelsHolder_Scroll); 

在滾動事件我無法獲得任何更改。 任何方式來使用內置的無需我手動添加滾動控件?

回答

1

看不出爲什麼不使用AutoScroll

如果您使用控制器,則必須通過自己移動控件。使用e.NewValue來確定滾動的值。 (在事件)

+0

我的控件映射一個巨大的圖像(我使用PaintBackGround來顯示它),並在圖像上插入一些控件(我已經需要手動更改它們的位置)。現在控件有一個給定的大小..背後的圖像大小可能會改變,大部分時間會比控制大。有沒有一種方法可以告訴控件,它的真實大小不是它在UI中的大小,因此AutoScroll知道拇指的大小是多少? – jmayor 2009-10-22 23:21:54

+0

我不知道我的理解,但你可以把它獨立在另一個單獨的userconrol,然後AutoScroll它.. – Letterman 2009-10-22 23:42:32