如何在c#窗体中创建自定义ToolStripProgressBar

本文关键字:创建 自定义 ToolStripProgressBar 窗体 | 更新日期: 2023-09-27 18:10:02

如何在c# Windows窗体中创建自定义ToolStripProgressBar ?

我想创建一个样式为continuos的进度条,但在windows xp中这是不可能的…

那么我如何为这个控件设置owner draw呢?

如何在c#窗体中创建自定义ToolStripProgressBar

我可以给你更多关于ToolStripControlHost的信息,我用下面的代码创建了一个ProgressBar

public class ToolStripProgressBarC : ToolStripControlHost
{
    // Call the base constructor passing in a ProgressBar instance.
    public ToolStripProgressBarC() : base(new ProgressBar()) 
    {
        ((ProgressBar)Control).Style = ProgressBarStyle.Continuous;
    }
    public ProgressBar ProgressBarControl
    {
        get
        {
            return Control as ProgressBar;
        }
    }
    // Expose the ProgressBar.Value as a property.
    public int Value
    {
        get
        {
            return ProgressBarControl.Value;
        }
        set { ProgressBarControl.Value = value; }
    }
}

然后我把它添加到我的工具条,像这样。

ToolStripProgressBarC tsp = new ToolStripProgressBarC();
tsp.Value = 90;
toolStrip1.Items.Add(tsp);

你应该能够做任何额外的覆盖,你想通过添加额外的函数到"ToolStripProgressBarC"类