AdvancedRadioButton Class

Represents a radio button with additional features such as customizable disabled colors, fixed auto sizing behavior, buffered fading animations, and more.

See the online help for a couple of image examples.

Definition

Namespace: KGySoft.WinForms.Controls
Assembly: KGySoft.WinForms (in KGySoft.WinForms.dll) Version: 5.0.1
C#
[ToolboxBitmapAttribute(typeof(RadioButton))]
public class AdvancedRadioButton : RadioButton, 
	ISupportsFading<ControlAppearanceState>, IWin32Window
Inheritance
Object    MarshalByRefObject    Component    Control    ButtonBase    RadioButton    AdvancedRadioButton
Implements
ISupportsFadingControlAppearanceState, IWin32Window

Remarks

The AdvancedRadioButton class offers the following features in addition to RadioButton:

Examples

The following image illustrates a few features of the AdvancedRadioButton class, like the default disabled colors difference (the disabled colors are customizable), text rendering quality, and the fixed auto sizing behavior when the control is docked to the top:

AdvancedRadioButton in the KGySoft.WinForms.Example application

The following animation demonstrates a couple of rendering issues with the regular RadioButton in high DPI mode with 150% scaling (as of .NET 10.0), as well as the buffered fading animations of AdvancedRadioButton, even for non-System FlatStyles:

AdvancedRadioButton in the KGySoft.WinForms.Example application

  Tip

The images above are from the example application. At the Releases page of the project repository you can download it as executable binaries as well.

Constructors

AdvancedRadioButton Creates a new instance of AdvancedRadioButton.

Properties

AutoScaleFont Gets or sets whether the Font should be automatically scaled when DPI changes and the current thread has per-monitor DPI awareness.
Default value: .
BackColor Gets or sets the background color of the control in the current Enabled state.
(Overrides ButtonBaseBackColor)
DisabledBackColor Gets or sets the background color when the control is not Enabled.
DisabledForeColor Gets or sets the text color when the control is not Enabled.
EnabledBackColor Gets or sets the background color when the control is Enabled.
EnabledForeColor Gets or sets the text color when the control is Enabled.
FadingAnimationDefaultSpeed Gets or sets the default fading animation speed for non-standard animations in milliseconds. Zero value means immediate change.
Default value: 500.
FadingAnimationOptions Gets or sets the fading options of the control.
Default value: StandardEffects.

See the online help for an animated image example.
FadingAnimationsEnabled Gets or sets whether fading animations are enabled for the control. Animations work on Windows Vista and above when rendering with visual styles.
Default value: .

See the online help for an animated image example.
FlatStyle Gets or sets the flat style appearance of the radio button control.
Default value: Standard.
FontGets or sets the font of the text displayed by the control.
(Overrides ControlFont)
ForeColor Gets or sets the foreground color of the control in the current Enabled state.
(Overrides ControlForeColor)
TextRenderingQuality Gets or sets the text rendering quality of the AdvancedRadioButton.
Default value: SystemDefault.

See the online help for an image example.
UseCompatibleTextRendering Gets or sets whether to use the text rendering engine compatible with .NET Framework 1.x (GDI+) or not (GDI).
Default value: .
VisualsRenderingQuality Gets or sets the rendering quality of the AdvancedRadioButton visuals. Has effect only in high DPI mode.
Default value: High.

Methods

DisposeReleases the unmanaged resources used by the ButtonBase and optionally releases the managed resources.
(Overrides ButtonBaseDispose(Boolean))
GetPreferredSize Retrieves the size of a rectangular area into which a control can be fitted.
(Overrides ButtonBaseGetPreferredSize(Size))
OnBackColorChangedRaises the BackColorChanged event.
(Overrides ControlOnBackColorChanged(EventArgs))
OnEnabledChangedRaises the EnabledChanged event.
(Overrides ButtonBaseOnEnabledChanged(EventArgs))
OnEnterRaises the Enter event.
(Overrides RadioButtonOnEnter(EventArgs))
OnFontChangedRaises the FontChanged event.
(Overrides ControlOnFontChanged(EventArgs))
OnForeColorChangedRaises the ForeColorChanged event.
(Overrides ControlOnForeColorChanged(EventArgs))
OnHandleCreatedRaises the HandleCreated event.
(Overrides RadioButtonOnHandleCreated(EventArgs))
OnKeyDownRaises the KeyDown event.
(Overrides ButtonBaseOnKeyDown(KeyEventArgs))
OnKeyUpRaises the KeyUp event.
(Overrides ButtonBaseOnKeyUp(KeyEventArgs))
OnLeaveRaises the Leave event.
(Overrides ControlOnLeave(EventArgs))
OnMouseDownRaises the MouseDown event.
(Overrides ButtonBaseOnMouseDown(MouseEventArgs))
OnMouseEnterRaises the MouseEnter event.
(Overrides ButtonBaseOnMouseEnter(EventArgs))
OnMouseLeaveRaises the MouseLeave event.
(Overrides ButtonBaseOnMouseLeave(EventArgs))
OnMouseMoveRaises the MouseMove event.
(Overrides ButtonBaseOnMouseMove(MouseEventArgs))
OnMouseUpRaises the MouseUp event.
(Overrides RadioButtonOnMouseUp(MouseEventArgs))
OnPaddingChangedRaises the PaddingChanged event.
(Overrides ControlOnPaddingChanged(EventArgs))
OnPaint Implicitly calls the OnPaintState method, which raises both the Paint and PaintState events.
(Overrides ButtonBaseOnPaint(PaintEventArgs))
OnPaintState Paints the specified state of this control, and raises the PaintState event.
OnParentChangedRaises the ParentChanged event.
(Overrides ButtonBaseOnParentChanged(EventArgs))
OnParentFontChangedRaises the FontChanged event when the Font property value of the control's container changes.
(Overrides ControlOnParentFontChanged(EventArgs))
OnTextChangedRaises the TextChanged event.
(Overrides ButtonBaseOnTextChanged(EventArgs))
OnVisibleChangedRaises the VisibleChanged event.
(Overrides ButtonBaseOnVisibleChanged(EventArgs))
WndProcProcesses Windows messages.
(Overrides ButtonBaseWndProc(Message))

Events

PaintState Occurs when the control is painted in a specific state.

Extension Methods

GetFormatFlags Gets the formatting flags for the text of a custom drawn control.
(Defined by ControlExtensions)
GetScale Gets the current scale factor of the specified control. If per-monitor DPI awareness is not enabled, it always returns SystemScale.
(Defined by ScaleHelper)
GetScrollBarSize Gets the recommended width and height of scrollbars matching the current scaling of the specified control.
(Defined by ScaleHelper)
HasDefaultScaling Gets whether the display that the specified control belongs to has the same DPI as the initial DPI of the primary display.
(Defined by ScaleHelper)
ScaleHeight Scales the specified height by the vertical scale factor of the control.
(Defined by ScaleHelper)
ScaleSize Scales the specified size by the scale factor of the control.
(Defined by ScaleHelper)
ScaleWidth Scales the specified width by the horizontal scale factor of the control.
(Defined by ScaleHelper)
SetControlEnabled Sets the Enabled property of the child controls within the specified root control, or the Enabled property of the specified control itself, if it is not a recognized container control. By this way pages of a TabControl will remain selectable, a SplitContainer remains resizable, etc.
(Defined by ControlExtensions)
SetControlReadonly Recursively sets the read-only state in the children of the specified root control. Affects TextBoxBase and IReadOnlyCapable instances.
(Defined by ControlExtensions)
SetDoubleBuffered Sets the double buffered state of a control
(Defined by ControlExtensions)
SetStyle Sets a specified ControlStyles flag to either or . It calls the protected Control.SetStyle method on the specified control as if it was a public method.
(Defined by ControlExtensions)

See Also