Export (0) Print
Expand All

TrackBarRenderer.GetTopPointingThumbSize Method

Returns the size, in pixels, of the track bar slider (also known as the thumb) that points up.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public static Size GetTopPointingThumbSize(
	Graphics g,
	TrackBarThumbState state
)

Parameters

g
Type: System.Drawing.Graphics

The Graphics this operation will use.

state
Type: System.Windows.Forms.VisualStyles.TrackBarThumbState

One of the TrackBarThumbState values that specifies the visual state of the slider.

Return Value

Type: System.Drawing.Size
A Size that specifies the size, in pixels, of the slider.

ExceptionCondition
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.

The size of the slider is determined by the current visual style of the operating system.

Before calling this method, you should verify that the value of the IsSupported property is true.

The following code example uses the GetTopPointingThumbSize method to determine the size of the rectangle used by the DrawTopPointingThumb method to draw the slider. This code example is part of a larger example provided for the TrackBarRenderer class.

// Calculate the sizes of the bar, thumb, and ticks rectangle. 
private void SetupTrackBar()
{
    if (!TrackBarRenderer.IsSupported)
        return;

    using (Graphics g = this.CreateGraphics())
    {
        // Calculate the size of the track bar.
        trackRectangle.X = ClientRectangle.X + 2;
        trackRectangle.Y = ClientRectangle.Y + 28;
        trackRectangle.Width = ClientRectangle.Width - 4;
        trackRectangle.Height = 4;

        // Calculate the size of the rectangle in which to  
        // draw the ticks.
        ticksRectangle.X = trackRectangle.X + 4;
        ticksRectangle.Y = trackRectangle.Y - 8;
        ticksRectangle.Width = trackRectangle.Width - 8;
        ticksRectangle.Height = 4;

        tickSpace = ((float)ticksRectangle.Width - 1) /
            ((float)numberTicks - 1);

        // Calculate the size of the thumb.
        thumbRectangle.Size =
            TrackBarRenderer.GetTopPointingThumbSize(g,
            TrackBarThumbState.Normal);

        thumbRectangle.X = CurrentTickXCoordinate();
        thumbRectangle.Y = trackRectangle.Y - 8;
    }
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft