1 out of 2 rated this helpful - Rate this topic

ProgressBar.Style Property

Gets or sets the manner in which progress should be indicated on the progress bar.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
[BrowsableAttribute(true)]
public ProgressBarStyle Style { get; set; }

Property Value

Type: System.Windows.Forms.ProgressBarStyle
One of the ProgressBarStyle values. The default is Blocks
Exception Condition
InvalidEnumArgumentException

The value is not a member of the ProgressBarStyle enumeration.

You can use the marquee style when you need to indicate progress is being made, without indicating the quantity of progress. The Marquee style is honored only when visual styles are enabled. The Continuous style is honored when visual styles are not enabled.

Windows XP Home Edition, Windows XP Professional x64 Edition, Windows Server 2003 Platform Note: The Marquee style is supported only on these platforms.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
ProgressBar.Style
Setting the progress bar's style to "Marquee" won't show any animation unless you set:
Application.EnableVisualStyles(); 
On the other hand, if you want to use "Continuous", and the application visual style is enabled, the progress will change from "Continuous" to "Blocks" without any easy way to fix that.

It has been suggested elsewhere that you tweak the window theme in order to achieve the "Continuous" effect when application visual style is enabled (but it is debatable if you really want to do that):

using System;
using System.Windows.Forms;

public class ContinuousProgressBar: ProgressBar
{
public ContinuousProgressBar()
{
this.Style = ProgressBarStyle.Continuous;
}
protected override void CreateHandle()
{
base.CreateHandle();
try { SetWindowTheme(this.Handle, "", ""); }
catch { }
}
[System.Runtime.InteropServices.DllImport("uxtheme.dll")]
private static extern int SetWindowTheme(IntPtr hwnd, string appname, string idlist);
}