C# WinForm ProgressBar垂直显示进度和从右向左显示进度

1. 尝试将ProgressBar的RightToLeft属性设置为System.Windows.Forms.RightToLeft.Yes,同时将RightToLeftLayout属性设置为true,ProgressBar的进度指示将从右向左显示。

2. 如何实现一个垂直进度显示的进度条?

  自定义VerticalProgressBar类继承ProgressBar,改写属性CreateParams如下:

C# WinForm ProgressBar垂直显示进度和从右向左显示进度
public class VerticalProgressBar : ProgressBar
{
    
protected override CreateParams CreateParams
    {
        
get
        {
            CreateParams cp 
= base.CreateParams;
            cp.Style 
|= 0x04;
            
return cp;
        }
    }
}
C# WinForm ProgressBar垂直显示进度和从右向左显示进度

  在窗体中找到定义ProgressBar的代码(如Form1.Designer.cs),将类型从System.Windows.Forms.ProgressBar修改为VerticalProgressBar。界面中需要将ProgressBar的高和宽进行适当调整。加入可以控制ProgressBar进度的代码,运行程序,你将会看到一个进度从下向上的垂直进度条。下面是程序运行的截图。同时附上完整代码VerticalProgressBar.zip

C# WinForm ProgressBar垂直显示进度和从右向左显示进度
垂直从下向上显示

 

C# WinForm ProgressBar垂直显示进度和从右向左显示进度
水平从右向左显示

本文转自Jaxu博客园博客,原文链接:http://www.cnblogs.com/jaxu/archive/2011/07/29/2121305.html,如需转载请自行联系原作者

上一篇:论云时代最经济的APM工具的姿势


下一篇:sar命令不能正常使用的小问题