• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

c#自定义控件之小小进度条

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

先看效果图:

非常简洁的一个进度条。

完整项目源码下载:https://files.cnblogs.com/files/tuzhiyuan/%E8%BF%9B%E5%BA%A6%E6%9D%A1%E6%8E%A7%E4%BB%B6%E8%87%AA%E5%AE%9A%E4%B9%891.rar

下面是代码:

 1  int _now = 1;
 2         Color hatchColor;
 3         public MYProgressBar()
 4         {
 5             InitializeComponent();
 6         }
 7         //设置当前进度位置
 8         [Description("设置当前进度所在位置")] //显示在属性设计视图中的描述
 9         [DefaultValue(typeof(Int32), "0")]//给予初始值
10         public int Value
11         {
12 
13             get
14             {
15                 return _now;
16             }
17             set
18             {
19                 if (value > 100)
20                 {
21                     _now = 100;
22                     SetJinDu(100);
23                 }
24                 else if (value < 0)
25                 {
26                     _now = 0;
27                     SetJinDu(0);
28                 }
29                 else
30                 {
31                     _now = value;
32                     SetJinDu(value);
33                 }
34             }
35         }
36         [Description("设置进度条进度颜色")] //显示在属性设计视图中的描述
37         [DefaultValue(typeof(Color), "Control")]//给予初始值
38         public Color BarColor
39         {
40             get { return hatchColor; }
41             set
42             {
43                 hatchColor = value;
44                 panel1.BackColor = value;
45             }
46         }
47         private void MYProgressBar_Load(object sender, EventArgs e)
48         {
49 
50         }
51         public void SetJinDu(int number)
52         {
53 
54             //获取控件宽度
55             float db_this_width = this.Width;
56 
57 
58             //进度值除以100得到进度条宽度相对的百分比
59             float bfz = (float)number / 100;
60 
61 
62             //控件宽度乘以百分比得到进度条Panel的相对宽度
63             panel1.Width = Convert.ToInt32((float)db_this_width * bfz);
64 
65         }
66    
67         //控件发生大小改变事件
68         private void MYProgressBar_Resize(object sender, EventArgs e)
69         {
70             panel1.Height = this.Height;
71             SetJinDu(Value);
72         }

如何使用,在winform工具栏右键选择项>浏览,选择自定义控件dll文件,即可在工具栏看到,拖动使用。

还是那句老话,没有完善,需要用还需继续完善。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#数据库增加新表怎么更新ef发布时间:2022-07-10
下一篇:
C#获取日期的星期名称发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap