C# MouseEventArgs对ScrollEventArgs的继承

C# MouseEventArgs对ScrollEventArgs的继承,c#,inheritance,scrollbar,mouseevent,mousewheel,C#,Inheritance,Scrollbar,Mouseevent,Mousewheel,我试图用鼠标移动VScrollBar,VScrollBar正在处理下面的问题,我想我可以用这个方法this.ctlVScroll.mouseweelwheel+=new MouseEventHandler(ctlVScroll_Scroll)0) { i-=ctlHScroll.SmallChange; if(i

我试图用鼠标移动VScrollBar,VScrollBar正在处理下面的问题,我想我可以用这个方法
this.ctlVScroll.mouseweelwheel+=new MouseEventHandler(ctlVScroll_Scroll)
this.ctlVScroll.Scroll += new ScrollEventHandler(ctlVScroll_Scroll);
        this.ctlVScroll.MouseWheel += new MouseEventHandler(ctlVScroll_Scroll/*here it does not accept*/);


private void ctlHScroll_Scroll(object sender, System.Windows.Forms.ScrollEventArgs e)
    {
        try
        {
            int i = ctlHScroll.Value;
            int j = 0;
            int k = Columns.GetTotalWidth();

            j = i;

            switch (e.Type)
            {
                case ScrollEventType.First:
                    i = 0;
                    break;
                case ScrollEventType.Last:
                    i = k - 1;
                    break;
                case ScrollEventType.SmallDecrement:
                    if (i - ctlHScroll.SmallChange > 0)
                    {
                        i -= ctlHScroll.SmallChange;
                        if (i < 0)
                            i = 0;
                    }
                    else
                    {
                        i = 0;
                    }
                    break;
                case ScrollEventType.SmallIncrement:
                    if (i + ctlHScroll.SmallChange < k - 1)
                    {
                        i += ctlHScroll.SmallChange;
                    }
                    else
                    {
                        i = k - 1;
                    }
                    break;...
}
this.ctlVScroll.Scroll+=新的ScrollEventHandler(ctlVScroll\u Scroll);
this.ctlVScroll.mouseweel+=新的MouseEventHandler(ctlVScroll_Scroll/*此处不接受*/);
私有无效ctlHScroll_滚动(对象发送方,System.Windows.Forms.ScrollEventArgs e)
{
尝试
{
int i=ctlHScroll.Value;
int j=0;
int k=Columns.GetTotalWidth();
j=i;
开关(e型)
{
案例ScrollEventType。首先:
i=0;
打破
案例ScrollEventType。最后:
i=k-1;
打破
大小写ScrollEventType.smallDecreation:
如果(i-ctlHScroll.SmallChange>0)
{
i-=ctlHScroll.SmallChange;
if(i<0)
i=0;
}
其他的
{
i=0;
}
打破
案例ScrollEventType.SmallIncrement:
如果(i+ctlHScroll.SmallChange
若你们不明白,我可以添加或编辑问题。 谢谢你的帮助


致以最诚挚的问候。

滚动条已经知道如何处理鼠标滚轮消息。您可以看到。您为什么需要帮助还不清楚。只需覆盖onmouseheel()方法。不,我的滚动条不接受鼠标滚轮消息。这就是问题所在。消息会被发送到带有焦点的窗口。首先单击滚动条,然后使用滚轮。我像往常一样单击窗口,但它不使用鼠标滚轮。我使用的是TabControl。在前两个选项卡中,我可以使用鼠标滚轮c控制,但对于第三、第四、第五个选项卡我不能。你对此有什么猜测吗?如果你愿意,我可以共享两个选项卡的代码,但它们都是很长的代码。滚动条,而不是“窗口”。你显然需要为我们提供最少的复制,我们无法帮助你。