New to Telerik UI for BlazorStart a free 30-day trial

Provides a native checkbox input control with enhanced styling, accessibility features, and data binding capabilities. Enables users to make binary choices like accepting terms, toggling settings, or selecting items from lists. Supports three visual states: checked, unchecked, and indeterminate for complex selection scenarios. Includes built-in validation integration, customizable appearance through theme settings, and full keyboard accessibility. Use for single selections, multi-item selection in lists, or hierarchical selection with parent-child relationships.

Definition

Namespace:Telerik.Blazor.Components

Assembly:Telerik.Blazor.dll

Type Parameters:

TValue

The data type for the checkbox value, restricted to boolean types for proper checkbox behavior. Use bool for simple true/false selections where a value is always required. Use nullable boolean to support three-state behavior with checked, unchecked, and null (indeterminate) values.

Syntax:

C#
public class TelerikCheckBox<TValue> : TelerikInputBase<TValue>, IComponent, IHandleEvent, IHandleAfterRender, IDisposable

Inheritance: objectComponentBaseBaseComponentTelerikInputBase<TValue>TelerikCheckBox<TValue>

Implements: IComponentIDisposableIHandleAfterRenderIHandleEvent

Inherited Members TelerikInputBase<TValue>.OnInitializedAsync()TelerikInputBase<TValue>.FocusAsync()TelerikInputBase<TValue>.CascadedEditContextTelerikInputBase<TValue>.FloatingLabelTelerikInputBase<TValue>.IdTelerikInputBase<TValue>.EnabledTelerikInputBase<TValue>.TabIndexTelerikInputBase<TValue>.ValueExpressionTelerikInputBase<TValue>.ValueChangedTelerikInputBase<TValue>.ValueTelerikInputBase<TValue>.OnChangeTelerikInputBase<TValue>.OnBlurTelerikInputBase<TValue>.AriaLabelTelerikInputBase<TValue>.AriaLabelledByTelerikInputBase<TValue>.AriaDescribedByTelerikInputBase<TValue>.ValidateOnTelerikInputBase<TValue>.InputModeBaseComponent.ShouldRender()BaseComponent.InitLocalizer()BaseComponent.ThrowIfParameterIsNull(object, string)BaseComponent.HaveOptionsChanged(IDictionary<string, object>, IDictionary<string, object>)BaseComponent.GetClassString(params string[])BaseComponent.InvokeAsync<T>(string, params object[])BaseComponent.InvokeAsync<T>(string, CancellationToken, params object[])BaseComponent.InvokeVoidAsync(string, params object[])BaseComponent.InvokeVoidAsyncWithoutAwait(string, params object[])BaseComponent.InvokeComponentMethodAsync<T>(string, params object[])BaseComponent.InvokeComponentMethodAsync<T>(string, CancellationToken, params object[])BaseComponent.InvokeVoidComponentMethodAsync(string, params object[])BaseComponent.InvokeComponentVoidMethodAsync(string, object)BaseComponent.InvokeDisposeAsync()BaseComponent.StateHasChanged()BaseComponent.RootComponentBaseComponent.ClassComponentBase.OnParametersSet()ComponentBase.OnAfterRender(bool)ComponentBase.InvokeAsync(Action)ComponentBase.InvokeAsync(Func<Task>)ComponentBase.DispatchExceptionAsync(Exception)...

Constructors

C#
public TelerikCheckBox()

Methods

C#
protected override void BuildRenderTree(RenderTreeBuilder __builder)
Parameters:__builderRenderTreeBuilder

Overrides: ComponentBase.BuildRenderTree(RenderTreeBuilder)

C#
public override void Dispose()

Overrides: TelerikInputBase<TValue>.Dispose()

C#
protected override Task OnAfterRenderAsync(bool firstRender)
Parameters:firstRenderboolReturns:

Task

Overrides: BaseComponent.OnAfterRenderAsync(bool)

C#
protected override void OnInitialized()

Overrides: ComponentBase.OnInitialized()

C#
protected override Task OnParametersSetAsync()
Returns:

Task

Overrides: TelerikInputBase<TValue>.OnParametersSetAsync()

C#
public override Task SetParametersAsync(ParameterView parameters)
Parameters:parametersParameterViewReturns:

Task

Overrides: TelerikInputBase<TValue>.SetParametersAsync(ParameterView)

Properties

Provides configuration for WebMCP tools, such as a Name to distinguish this CheckBox from others on the same page.

C#
[Parameter]
public RenderFragment CheckBoxSettings { get; set; }

Gets or sets the description used for the data-smart-paste attribute.

C#
[Parameter]
public string DataSmartPasteDescriptionAttribute { get; set; }

Enables WebMCP tool registration for this CheckBox. When true, CheckBox operations are exposed as tools discoverable by AI models through the browser. Default value is false.

C#
[Parameter]
public bool EnableWebMcpTools { get; set; }

Controls whether the checkbox shows the indeterminate state (mixed state) when the value is null. Only works when Value is null for nullable boolean types. Default value is false.

C#
[Parameter]
public bool Indeterminate { get; set; }

Fires when the indeterminate state changes, enabling two-way binding for the Indeterminate property. Use with @bind-Indeterminate syntax for automatic state synchronization in parent-child checkbox scenarios.

C#
[Parameter]
public EventCallback<bool> IndeterminateChanged { get; set; }

Controls the corner rounding style of the checkbox. Works with all themes and automatically adapts to the current visual design system.

C#
[Parameter]
public string Rounded { get; set; }
Remarks:

Small provides minimal rounding for sharp, modern appearance. Medium offers balanced rounding suitable for most designs. Large creates pronounced rounding for softer, friendly appearance.

Specifies the size of the checkbox.

C#
[Parameter]
public string Size { get; set; }
Remarks:

Small creates compact checkboxes ideal for dense layouts or mobile interfaces. Medium provides standard sizing suitable for most applications and forms. Large creates larger checkboxes for improved accessibility and touch interaction.

Sets the HTML title attribute which appears as a tooltip when users hover over the button. This provides additional context or instructions for the button's purpose. Example: "Accept terms and conditions" or "Enable notifications".

C#
[Parameter]
public string Title { get; set; }