Windows窗体:如何在滚动条中禁用滚动?

时间:2013-06-05 06:45:04

标签: winforms c#-4.0

我有一个带滚动条的表单,我想禁用垂直滚动条中的滚动按钮,只需单击上下移动按钮即可...

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

试试这个......

VScrollBar vsb = DataGridView1.Controls.OfType(Of(VScrollBar)).SingleOrDefault;

vsb.LargeChange = vsb.SmallChange;   

答案 1 :(得分:0)

你会在这里找到答案:Hide vertical scroll bar in ListBox control

基本上,你无法隐藏它。如果需要,您只能使其始终显示或自动显示。否则,您可能需要进行自定义控制才能执行所需操作。

该链接还向您展示了如何创建一个类库(直接从链接中获取):

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ClassLibrary1
{
    public class MyListBox : System.Windows.Forms.ListBox
    {
        private bool mShowScroll;
        protected override System.Windows.Forms.CreateParams CreateParams
        {
            get
            {
                CreateParams cp = base.CreateParams;
                if (!mShowScroll)
                    cp.Style = cp.Style & ~0x200000;
                return cp;
            }
        }
        public bool ShowScrollbar
        {
            get { return mShowScroll; }
            set
            {
                if (value == mShowScroll)
                    return;
                mShowScroll = value;
                if (Handle != IntPtr.Zero)
                    RecreateHandle();
            }
        }
    }    
}