2009-10-23 38 views
1

是否有任何方法可以使用每個.Net ScrollableControl附帶的內置ScrollBars,而無需將AutoScroll屬性設置爲Enable? 這是問題,即使我啓用,設置爲可見並聲明最小值和最大值以及horizo​​ntalScrollBar和VerticalScrollBar的smallChange和LargeChange,它們顯示在控件的邊框中,但它們沒用。單擊時,拇指不會移動,並且單擊滾動時(OldValue和NewValue均爲0)控件的滾動事件不會帶來任何有用的信息。 這是我試圖設置滾動條值的方式:在.Net中使用ScrollBars

 HorizontalScroll.Enabled = true; 
     HorizontalScroll.Value = 80; 
     HorizontalScroll.Minimum = 0; 
     HorizontalScroll.Maximum = 300; 
     HorizontalScroll.SmallChange = 2; 
     HorizontalScroll.LargeChange = 4; 
     HorizontalScroll.Visible = true; 

(也做了同樣的事情垂直滾動)

任何想法?或者我必須自己添加到新的滾動條到我的控制?

+0

是否有可滾動顯示的內容?不要設置初始值並拖動窗口縮小可視大小,它可能會比您期望的大一點。 – curtisk 2009-10-23 17:50:29

回答

0

那麼我找不到一種方式來重用與每個網絡可滾動控件集成在一起的相同滾動條。最後,我製作了自己的Scrolls,並且非常重要...如果它是一個其他人將要重用的控件,則覆蓋AutoScroll屬性。

public override bool AutoScroll 
     { 
      get { return false; } 
      set 
      { 
       if (value) 
        throw new Exception("Auto Scroll not supported in this control"); 
       base.AutoScroll = false; 
      } 
     }