c# – 倒置垂直进度条?

我想做一个垂直进度条,所以我发现了这个:
Vertical progress bar

但现在就像你有Horizitonal Progress Bar一样,你可以让它从LeftToRight / RightToLeft开始工作,所以我希望我的垂直工作从UpToDown工作,而不是像DownToUp那样现在工作..

可能吗?

这是我的代码

public class VerticalProgressBar : ProgressBar
{
    protected override CreateParams CreateParams
    {
        get
        {
            CreateParams cp = base.CreateParams;
            cp.Style |= 0x04;
            return cp;
        }
    }
}

我正在使用C#.NET 3.5 Windows窗体

最佳答案
似乎没有任何CreateParams支持倒置的垂直ProgressBar.这些是Windows API的样式参数:

#define PBS_SMOOTH          0x01
#define PBS_VERTICAL        0x04
#define PBS_MARQUEE         0x08
#define PBS_SMOOTHREVERSE   0x10

#define PBST_NORMAL         1
#define PBST_ERROR          2
#define PBST_PAUSED         3

我尝试更改RightToLeft值无济于事.似乎也没有办法任意旋转Windows窗体控件.

可能的解决方案可能是使用WPF ProgressBar.你可以将它旋转90度,它应该做你想要的.另一种选择是使用第三方Progressbar控件或创建自定义渲染控件.渲染简单的平面进度条应该相当容易.

转载注明原文:c# – 倒置垂直进度条? - 代码日志