Я могу дать вам больше информации о 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.