ProgressBarRenderer::ChunkThickness Property
Gets the width, in pixels, of a single inner piece of the progress bar.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
Property Value
Type: System::Int32The width, in pixels, of a single inner piece of the progress bar.
| Exception | Condition |
|---|---|
| InvalidOperationException | The operating system does not support visual styles. -or- Visual styles are disabled by the user in the operating system. -or- Visual styles are not applied to the client area of application windows. |
This value is determined by the current visual style of the operating system.
Before accessing this property, you should verify that the IsSupported property returns true.
The following code example uses the ChunkThickness property to determine the size of each rectangle that represents an increment of the progress bar drawn by the DrawVerticalChunks method. This code example is part of a larger example provided for the ProgressBarRenderer class.
// Initialize the rectangles used to paint the states of the
// progress bar.
private:
void SetupProgressBar()
{
if (!ProgressBarRenderer::IsSupported)
{
return;
}
// Determine the size of the progress bar frame.
this->Size = System::Drawing::Size(ClientRectangle.Width,
(NumberChunks * (ProgressBarRenderer::ChunkThickness +
(2 * ProgressBarRenderer::ChunkSpaceThickness))) + 6);
// Initialize the rectangles to draw each step of the
// progress bar.
progressBarRectangles = gcnew array<Rectangle>(NumberChunks);
for (int i = 0; i < NumberChunks; i++)
{
// Use the thickness defined by the current visual style
// to calculate the height of each rectangle. The size
// adjustments ensure that the chunks do not paint over
// the frame.
int filledRectangleHeight =
((i + 1) * (ProgressBarRenderer::ChunkThickness +
(2 * ProgressBarRenderer::ChunkSpaceThickness)));
progressBarRectangles[i] = Rectangle(
ClientRectangle.X + 3,
ClientRectangle.Y + ClientRectangle.Height - 3
- filledRectangleHeight,
ClientRectangle.Width - 6,
filledRectangleHeight);
}
}
Available since 2.0