今天使用VScorllBall控件做了个控制界面上下滑动的功能,网上也找了这方面的资料,大概综合借鉴了一下之后,搞了一个适合我自己的自定义功能控件。

下面话不多说,直接上代码。

private void setInitScroll()//这个方法其实我不用也可以,就是设置一下滚动条而已,原本是还有设置控件的滑动最大范围的,但是我这边感觉不用会更好,所以就删除了。感兴趣的同学可以自己网上搜一下。
        {
            // 设置滚动条滑块大小
            this.vScrollBar1.LargeChange = (this.groupControl2.Height - this.Height) / 4;
        }

private void vScrollBar1_Scroll(object sender, ScrollEventArgs e)//控件功能主要核代码就是这几行,网上也看了有些也挺麻烦的,这个算是我精简了吧,当然这个不一定适合所有人。
        {
            Point p = groupControl2.Location;
            p.Y = 0 - (int)(e.NewValue);
            groupControl2.Location = p;
        }

private void groupControl2_MouseClick(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            vScrollBar1.Focus();//这里是为了让控件获得焦点,避免鼠标滚轮方法无法实现。
        }

private void groupControl2_MouseWheel(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            Point p = groupControl2.Location;
            if (e.Delta > 0)
            {
                this.vScrollBar1.Value -= 10;
            }
            if (e.Delta < 0)
            {
                this.vScrollBar1.Value += 10;
            }
            p.Y = 0 - vScrollBar1.Value;
            groupControl2.Location = p;

}

代码不长也挺简单的,一看就明白,只是习惯性记个工作记录。

DEV Express控件VScorllBar控件使用的更多相关文章

  1. 【原创】自己动手写控件----XSmartNote控件

    一.前面的话 在上一篇博文自己动手写工具----XSmartNote [Beta 3.0]中,用到了若干个自定义控件,其中包含用于显示Note内容的简单的Label扩展控件,用于展示标签内容的labe ...

  2. winform用户控件、动态创建添加控件、timer控件、控件联动

    用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...

  3. paip.gui控件tabs控件加载内容的原理以及easyui最佳实现

    paip.gui控件tabs控件加载内容的原理以及easyui最佳实现 //////////////tabs控件的加载 同form窗体一样,俩个方式 两个方式:一个是url,简单的文本可以使用这个,不 ...

  4. zw版【转发·台湾nvp系列Delphi例程】Delphi 使用 HALCON库件COM控件数据格式转换

    zw版[转发·台湾nvp系列Delphi例程]Delphi 使用 HALCON库件COM控件数据格式转换 Delphi 使用 HALCON库件COM控件数据格式转换,与IHObjectX接口有关 va ...

  5. [摘]ASP.Net标准控件(TextBox控件)

    TextBox控件 TextBox控件又称文本框控件,为用户提供输入文本的功能. 1.属性 TextBox控件的常用属性及说明如表1所示. 表1 TextBox控件常用属性及说明 属    性 说   ...

  6. ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件

    原文:ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件 Login控件它是属于Membership服务的一部分,必须配置Membership提供程 ...

  7. bootstrap 表单控件 控件状态 控件大小 help-block

    bootstrap 表单控件 控件状态 控件大小 help-block <!DOCTYPE html> <html lang="en"> <head& ...

  8. C# 向程序新建的窗体中添加控件,控件需要先实例化,然后用controls.add添加到新的窗体中去

    C# 向程序新建的窗体中添加控件,控件需要先实例化,然后用controls.add添加到新的窗体中去 Form settingForm = new Form(); setForm deviceSet ...

  9. 背水一战 Windows 10 (77) - 控件(控件基类): ContentControl, UserControl, Page

    [源码下载] 背水一战 Windows 10 (77) - 控件(控件基类): ContentControl, UserControl, Page 作者:webabcd 介绍背水一战 Windows ...

随机推荐

  1. json 存 window.localStorage.setItem('hideColums',hideArr);

    onColumnSwitch:function(row, $element){ //JSON.parse() var showColumns=$('#table').bootstrapTable('g ...

  2. TYPE=MyISAM 与 ENGINE=MyISAM 的区别(摘要版)

    TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句 (老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM). MySQL 5.1为向下 ...

  3. 卸载钩子 UnhookWindowsHookEx

    The UnhookWindowsHookEx function removes a hook procedure installed in a hook chain by the SetWindow ...

  4. 11-3 re模块

    目录 r 的作用 re模块的常用功能 findall search match split sub 将数字替换成'H' subn 将数字替换成'H',返回元组(替换的结果,替换了多少次) compil ...

  5. 第2节 mapreduce深入学习:13、mapreduce的整个运行过程(多看几遍)

    两个问题: 1.mapTaks的个数怎么确认:与block块相关2.reducetask的个数怎么确认:没法确认,需要反复的设置尝试,找到最优值.  手动进行设置 job.setNumReduceTa ...

  6. SQL Server中 sysobjects、sysolumns、systypes

    1.sysobjects    系统对象表. 保存当前数据库的对象,如约束.默认值.日志.规则.存储过程等 在大多数情况下,对你最有用的两个列是Sysobjects.name和Sysobjects.x ...

  7. python 求100以内所有素数

    def prime(num): for i in range(2, num): if num % i == 0: # 能被1之外的任意个数整除的即为非素数,返回False,将被filter函数过滤掉 ...

  8. Spring Boot . 2 -- 用Spring Boot 创建一个Java Web 应用

    通过 start.spring.io 创建工程 通过 IDEA 创建工程

  9. Libjingle 库

    Libjingle 是google talk voice(语音聊天) 和 p2p interoperability(点对点操作)库,是提供了google talk,p2p文件共享和语音呼叫能力的组件集 ...

  10. CGPathAddArc

    使用CGPathAddArc使UIView的Layer绕中心点旋转 2012-12-04 15:38 775人阅读 评论(0) 收藏 举报 animationAnimationiosiOSIOSlay ...