ColorPicker Blazor API

ColorPicker Properties

NameTypeDefaultDescription
EditableboolfalseThis property enables users to edit colors directly through the input field located within the element's action section. It accepts values in all supported color formats (such as HEX, RGB, or HSL). Please note, this property is effective only when the valueDisplayMode is set to either default or colorCode.
AutoCloseDelayint100Specifies the duration (in milliseconds) to wait before automatically closing the dropdown menu after it has been opened, applicable only when dropDownOpenMode is set to 'auto'. This delay allows users sufficient time to interact with the dropdown before it closes automatically.
ApplyValueModeColorApplyValueModeColorApplyValueMode.InstantlyDefines the method for confirming the user's selected value in the color picker.
- In ''instantly'' mode, the new value is applied immediately whenever the user selects a color, with no further confirmation required.
- In ''useButtons'' mode, 'OK' and 'Cancel' buttons appear at the bottom of the color picker’s dropdown. The color change is only applied when the user clicks the 'OK' button. Clicking 'Cancel' will close the dropdown without applying the selected value.
ColumnCountint8Specifies how many columns of colors are displayed when using the 'grid', 'hexagonal', or 'spectrumGrid' displayModes. Adjusting this value determines the width of the color palette layout for these modes.
DisplayModeColorDisplayModeColorDisplayMode.DefaultSpecifies the color palette to be used, including individual colors and their arrangement within the layout. This setting controls both which colors are displayed and how they appear in the user interface.
DisabledboolfalseControls whether the element is interactive or not. When enabled, the element can be interacted with by the user; when disabled, the element is not interactive and may appear visually distinct (e.g., grayed out) to indicate its inactive state.
DisableUndoboolfalseBy default, clicking on the color panel's preview container reverts the selected color value to its previous state, effectively functioning as an undo action. Setting the 'disableUndo' option disables this functionality, so clicking the preview container will no longer revert the color value.
DropDownAppendTostring"body"Defines the parent container in which the dropDown (popup) will be rendered. Accepts a CSS selector string, an element ID, or the literal value 'body'. This setting is helpful when the dropDown’s visibility is affected by CSS properties (such as overflow or z-index) applied to its parent elements. Specify 'body' to attach the dropDown directly to the element for maximum visibility. Example: 'body'.
DropDownOpenModeDropDownOpenModeDropDownOpenMode.DefaultControls the direction or orientation in which the dropdown menu appears when activated (e.g., opening upwards, downwards, to the left, or to the right). This setting dictates the dropdown's display position relative to its trigger element.
DropDownButtonPositionDropDownButtonPositionDropDownButtonPosition.RightSpecifies the placement of the dropdown button relative to its parent element. This determines where the dropdown button will appear on the user interface, such as above, below, to the left, or to the right of the related element.
DropDownPositionDropDownPositionDropDownPosition.AutoSpecifies the vertical placement of the dropDown menu relative to its trigger element. When set to 'Auto', the component intelligently chooses to display the dropDown either above or below the trigger based on available space within the viewport, ensuring optimal visibility and user experience.
DropDownHeightstring"auto"Specifies the height of the dropdown menu. By default, this property is set to null, which means the component will use CSS variables (custom properties) to determine its height. If the browser does not support CSS variables, set this property to a specific value (e.g., '200px' or '2.5em') to manually define the dropdown's height. Use this property only to ensure compatibility with browsers that lack support for CSS variables.
DropDownOverlayboolfalseWhen this property is enabled, opening the element’s dropdown will display a transparent overlay that covers the area between the dropdown menu and the rest of the page. This overlay visually separates the dropdown from other content and can help capture user interactions outside the dropdown, such as clicks to close the menu.
DropDownWidthstring"auto"Defines the width of the dropdown component. By default, this property is set to null, which means the dropdown will use CSS variables (such as '--dropdown-width') to determine its width. If you need to support browsers that do not support CSS variables, explicitly set this property to a specific width value (e.g., ''200px'' or ''20em''). This ensures consistent dropdown sizing across all browsers, including those without CSS variable support.
EditAlphaChannelboolfalseEnables users to adjust the alpha (transparency) level of colors through an editor or slider interface. This functionality is available in the following display modes: 'palette', 'radial', and 'hexagonal', allowing for precise control over color opacity in each mode.
EnableCustomColorsboolfalseEnables users to choose a custom color through an editor popup interface. This feature provides custom color selection in modes where it is not available by default—such as 'grid', 'default', and 'spectrum grid'—enhancing flexibility and user experience across different color selection modes.
GridThemeColorsstring[]new string[]{}Defines an array of color values that serve as the theme colors for the component or section. These colors will be applied when the displayMode is set to either 'grid' or 'default', ensuring consistent theming across these display modes. Each color in the array should be specified in a valid CSS color format (e.g., HEX, RGB, or named color).
GridShadeColorsstring[]new string[]{}Specifies an array of color values to be used as shade colors within the relevant section when the displayMode is set to either 'grid' or 'default'. These colors determine the visual shading or background color scheme that appears in these display modes.
GridStandardColorsstring[]new string[]{}Specifies an array of colors to be used as the standard color palette within the relevant section when the displayMode is set to either 'grid' or 'default'. These colors will be available for selection or display in these display modes, providing a consistent and predefined set of color options for users.
HideAlphaEditorboolfalseHides the alpha editor. The alpha editor is an input field that allows users to adjust the opacity (alpha value) of the currently selected color. It is available in the following display modes: 'radial', 'palette', and 'hexagonal'. The alpha editor is only shown when there is sufficient space in the UI. By default, this editor is visible unless explicitly hidden using this setting.
HideContentToFitstring[]new string[]{}Specifies the priority order in which color editors are hidden when there is insufficient space to display them all. By default, these editors are only visible in the 'palette', 'radial', and 'hexagonal' display modes. This property enables you to control which editors remain visible by defining their visibility priority, ensuring that the most important editors are retained as the available space decreases.
HideHEXEditorboolfalseThe HEX editor is a user input field that allows users to view and edit the hexadecimal (HEX) color code, representing the selected color. By default, the HEX editor is visible within the interface, enabling users to enter or modify HEX values such as #FF5733. To hide the HEX editor from the interface, set the 'hideHEXeditor' property to true. Note: Setting 'hideRGBeditor' to true only hides the RGB editor and does not affect the visibility of the HEX editor.
HidePreviewContainerboolfalseHides the preview container, which displays the currently selected value when using the 'palette', 'radial', or 'hexagonal' display modes. When this option is enabled, the user will not see the visual preview of their selection within the interface. This can be useful for creating a more compact UI or when the preview is not necessary for your workflow.
HideRGBEditorboolfalseHides the RGB editor interface. The RGB editor consists of three individual input fields, each allowing users to specify the Red, Green, and Blue components of a color separately. By hiding the RGB editor, users will no longer see or interact with these color value inputs.
Hintstring""Displays supplementary helper text beneath the element, which becomes visible only when the element is focused, providing context-specific guidance to the user during interaction.
InvertedboolfalseInverts all colors displayed in the ‘spectrumGrid’, ‘hexagonal’, and ‘radial’ modes, producing their complementary (negative) color values for each element in these modes. This affects the entire color range shown, allowing for an alternative visual representation of the color palette.
Labelstring""Displays a descriptive label above the element to provide context or identify its purpose for users.
UnlockKeystring""Sets or retrieves the unlockKey, a value required to activate or grant access to the product’s features. This key is typically used for licensing or security purposes, ensuring only authorized users can unlock the product.
Localestring"en"Specifies or retrieves the current language code (e.g., 'en', 'fr', 'es') to be used for localization purposes. This property works together with the messages property, which contains language-specific translations or text. Setting this value determines which set of messages is displayed to users based on their selected language.
MessagesobjectN/ADefines or retrieves an object containing the localized strings used within the widget’s user interface. This property works in conjunction with the locale property to enable the display of text in different languages, allowing developers to customize and provide translations for all UI elements and messages.
Namestring""Specifies or retrieves the value of the element’s name attribute. The name attribute is used to identify form controls when submitting an HTML form; its value is included as the key in the form-data sent to the server and allows the server to process user input correctly.
IsOpenedboolfalseSpecifies if the popup component is currently visible (open) or hidden (closed).
PaletteColorPaletteColorPalette.DefaultSpecifies the color palette that will appear in the 'spectrumGrid', 'grid', and 'hexagonal' display modes. These colors define the available color options shown to users when any of these display modes are active.
PaletteColorsIEnumerable<object>N/ADefines a custom color palette as an array, which can be utilized in the display modes 'grid' and 'spectrum grid' when the palette property is set to custom. Each item in the array can either be a string representing a valid color format (such as HEX, RGB, or RGBA), or an object containing a color value. This allows you to specify a tailored set of colors for your application's interface, ensuring precise control over the available color options in supported display modes.
PaletteCustomColorsstring[]new string[]{}Specifies an array containing a predefined set of custom colors for use in the application's color picker component. This custom palette appears in the color grid when the color picker is in 'grid', 'default', or 'spectrum grid' displayModes. The custom colors are displayed below the custom color selection button, at the bottom of the color grid. These colors are only visible if the enableCustomColor property is set to true. This allows users to quickly access and select from your specified custom colors in supported display modes.
Placeholderstring""The placeholder appears when no value has been entered, or if the current value is null. It provides a visual cue or hint to the user about the expected input until an actual value is provided.
ReadonlyboolfalsePrevents any user interactions with the element, such as clicking, typing, or focusing, rendering it completely unresponsive to pointer and keyboard events.
ResizeIndicatorboolfalseControls the visibility of the resize indicator located in the bottom-right corner of the dropdown menu. When set to true, the resize handle is displayed, allowing users to adjust the size of the dropdown. This property should be used alongside the resizeMode property to specify how resizing is handled.
ResizeModeResizeModeResizeMode.NullSpecifies whether the drop-down menu can be resized by the user. When this option is enabled, a resize handle appears on either the top or bottom edge of the drop-down, allowing users to adjust its height interactively. If disabled, the drop-down’s size remains fixed and cannot be modified by the user.
RightToLeftboolfalseSpecifies or retrieves a value that determines whether the element's text direction is set to right-to-left (RTL) alignment, commonly used for languages such as Arabic or Hebrew. This property ensures the element properly supports locales that require right-to-left text display.
Themestring""Specifies the theme to be applied to the element. The selected theme controls the overall appearance, including colors, fonts, and styles, ensuring visual consistency across the user interface.
TooltipDisplayModeColorTooltipDisplayModeColorTooltipDisplayMode.HexSpecifies the format and content used by the tooltip to display the value of the color when a user hovers over it. This setting controls how the color value is presented to the user, such as showing it as a HEX code, RGB value, or color name, within the tooltip interface.
UnfocusableboolfalseWhen set to true, this property prevents the element from receiving keyboard focus, making it unreachable via tab navigation or programmatic focus methods (e.g., element.focus()).
Valuestring"null"Represents the currently selected color value assigned to the element. This value is typically formatted as a hexadecimal color code (e.g., "#FF5733"), reflecting the user's choice in a color picker input.
ValueFormatColorValueFormatColorValueFormat.DefaultSpecifies the color format to be used, allowing selection between HEX, RGB, or RGBA formats. By default, the color format is automatically determined based on the current displayMode setting. This property ensures that colors are displayed in the preferred or most appropriate format for the context.
ValueDisplayModeColorValueDisplayModeColorValueDisplayMode.DefaultSpecifies which controls or buttons (such as ‘Apply’, ‘Cancel’, ‘Reset’, or custom actions) will appear in the action section of the color picker component. This determines the set of interactive elements available to users for confirming, cancelling, or modifying their color selection.

ColorPicker Methods

NameTypeArgumentsDescription
ClosevoidN/AImproved: "Closes the color picker dropdown menu, hiding the color selection options from view."
GetIsOpenedAsync()Task<bool>'N/A'Gets the &quot;IsOpened&quot; property as Task&lt;bool&gt;.
GetValueAsync()Task<string>'N/A'Gets the &quot;Value&quot; property as Task&lt;string&gt;.
OpenvoidN/ADisplays the color picker’s drop-down panel, allowing users to select or customize a color.
Refreshvoid'N/A'Refreshes the Blazor Component. Performs a layout of the HTML Elements and recalculates the measurements.
Rendervoid'N/A'Re-renders the Blazor Component. This method will make a full re-render.
StateHasChangedvoid'N/A'Refreshes the state and Re-renders the Blazor Component, if necessary.

ColorPicker Events

NameTypeDescriptionEvent Detail
OnActionButtonClickEventCallback<Event>This event is triggered when the user clicks the action button. The "Ok" button will only appear if the "applyValueMode" property is set to "useButtons". In other modes, the "Ok" button is hidden and this event will not be available. This setting allows developers to control when value changes are confirmed by requiring explicit user action.N/A
ActionButtonClickedevent ColorPickerActionButtonClickedEventHandlerThis event is triggered when the user clicks the action button. The "Ok" button will only appear if the "applyValueMode" property is set to "useButtons". In other modes, the "Ok" button is hidden and this event will not be available. This setting allows developers to control when value changes are confirmed by requiring explicit user action.ColorPickerActionButtonClickedEventArgs
OnCancelButtonClickEventCallback<Event>This event is triggered when the user clicks the 'Cancel' button. Note that the 'Cancel' button appears only if the "applyValueMode" property is set to "useButtons". If a different value is set for "applyValueMode", the 'Cancel' button will not be displayed, and this event will not be triggered.N/A
CancelButtonClickedevent ColorPickerCancelButtonClickedEventHandlerThis event is triggered when the user clicks the 'Cancel' button. Note that the 'Cancel' button appears only if the "applyValueMode" property is set to "useButtons". If a different value is set for "applyValueMode", the 'Cancel' button will not be displayed, and this event will not be triggered.ColorPickerCancelButtonClickedEventArgs
OnChangeEventCallback<Event>This event is triggered whenever the color value is modified by the user or programmatically. It provides updated information about the new color selection, allowing you to perform actions—such as updating the UI or storing the new value—in response to the change.dynamic oldValue- The previously selected color., dynamic value- The new selected color.
Changedevent ColorPickerChangedEventHandlerThis event is triggered whenever the color value is modified by the user or programmatically. It provides updated information about the new color selection, allowing you to perform actions—such as updating the UI or storing the new value—in response to the change.ColorPickerChangedEventArgs
OnCloseEventCallback<Event>This event is triggered when the dropdown menu is closed, either by selecting an option, clicking outside the dropdown, or pressing a key that dismisses the menu. It allows you to execute custom logic after the dropdown is no longer visible to the user.N/A
Closedevent ColorPickerClosedEventHandlerThis event is triggered when the dropdown menu is closed, either by selecting an option, clicking outside the dropdown, or pressing a key that dismisses the menu. It allows you to execute custom logic after the dropdown is no longer visible to the user.ColorPickerClosedEventArgs
OnClosingEventCallback<Event>This event is fired just before the dropdown menu is closed. By handling this event, you can intervene and prevent the dropdown from closing by calling event.preventDefault() within your event handler. This provides an opportunity to validate data, display a confirmation dialog, or perform any custom logic before the dropdown is hidden.N/A
Closingevent ColorPickerClosingEventHandlerThis event is fired just before the dropdown menu is closed. By handling this event, you can intervene and prevent the dropdown from closing by calling event.preventDefault() within your event handler. This provides an opportunity to validate data, display a confirmation dialog, or perform any custom logic before the dropdown is hidden.ColorPickerClosingEventArgs
OnCustomColorSelectionEventCallback<Event>This event is triggered whenever the custom color selection view is either opened or closed. The custom color selection view becomes accessible only when the "enableCustomColors" property is set to <code>true</code>. This event allows you to respond to user interactions with the custom color selector, such as initializing settings when the view opens or performing cleanup when it closes.dynamic value- A boolean that indicates whether the custom color view is shown or not.
CustomColorSelectionedevent ColorPickerCustomColorSelectionedEventHandlerThis event is triggered whenever the custom color selection view is either opened or closed. The custom color selection view becomes accessible only when the "enableCustomColors" property is set to <code>true</code>. This event allows you to respond to user interactions with the custom color selector, such as initializing settings when the view opens or performing cleanup when it closes.ColorPickerCustomColorSelectionedEventArgs
OnDropDownButtonClickEventCallback<Event>This event is triggered when the user clicks on the dropdown button, indicating their intent to expand or collapse the dropdown menu. It can be used to execute custom logic—such as displaying options, updating UI elements, or tracking user interactions—whenever the dropdown button is activated.N/A
DropDownButtonClickedevent ColorPickerDropDownButtonClickedEventHandlerThis event is triggered when the user clicks on the dropdown button, indicating their intent to expand or collapse the dropdown menu. It can be used to execute custom logic—such as displaying options, updating UI elements, or tracking user interactions—whenever the dropdown button is activated.ColorPickerDropDownButtonClickedEventArgs
OnOkButtonClickEventCallback<Event>This event is triggered when the user clicks the "OK" button. It can be used to execute custom logic in response to the user's confirmation action, such as submitting a form, closing a modal dialog, or proceeding to the next step in a workflow.N/A
OkButtonClickedevent ColorPickerOkButtonClickedEventHandlerThis event is triggered when the user clicks the "OK" button. It can be used to execute custom logic in response to the user's confirmation action, such as submitting a form, closing a modal dialog, or proceeding to the next step in a workflow.ColorPickerOkButtonClickedEventArgs
OnOpenEventCallback<Event>This event is triggered each time the dropdown menu becomes visible to the user, such as when it is clicked or otherwise activated. Use this event to execute custom logic when the dropdown opens, for example, loading dynamic content or initializing UI elements within the dropdown.N/A
Openedevent ColorPickerOpenedEventHandlerThis event is triggered each time the dropdown menu becomes visible to the user, such as when it is clicked or otherwise activated. Use this event to execute custom logic when the dropdown opens, for example, loading dynamic content or initializing UI elements within the dropdown.ColorPickerOpenedEventArgs
OnOpeningEventCallback<Event>This event is triggered immediately before the dropdown menu is opened. Within the event handler, you can prevent the dropdown from opening by calling event.preventDefault(). This provides an opportunity to perform validation, execute custom logic, or conditionally cancel the opening of the dropdown based on specific criteria.N/A
Openingevent ColorPickerOpeningEventHandlerThis event is triggered immediately before the dropdown menu is opened. Within the event handler, you can prevent the dropdown from opening by calling event.preventDefault(). This provides an opportunity to perform validation, execute custom logic, or conditionally cancel the opening of the dropdown based on specific criteria.ColorPickerOpeningEventArgs
OnResizeStartEventCallback<Event>This event is triggered when the user initiates the resizing action on the dropdown component, such as by clicking and dragging the resize handle or edge. It indicates the start of the resize interaction, allowing you to perform actions like displaying visual cues or preparing to handle the size change.dynamic position- An object containing the current left and top positions of the drop down.
ResizeStartedevent ColorPickerResizeStartedEventHandlerThis event is triggered when the user initiates the resizing action on the dropdown component, such as by clicking and dragging the resize handle or edge. It indicates the start of the resize interaction, allowing you to perform actions like displaying visual cues or preparing to handle the size change.ColorPickerResizeStartedEventArgs
OnResizeEndEventCallback<Event>This event is triggered when the resizing action of the dropdown component is complete, indicating that the user has finished adjusting its size. At this point, any changes to the dimensions of the dropdown are finalized, and you can safely perform operations that depend on its new size.dynamic position- An object containing the current left and top positions of the drop down.
ResizeEndedevent ColorPickerResizeEndedEventHandlerThis event is triggered when the resizing action of the dropdown component is complete, indicating that the user has finished adjusting its size. At this point, any changes to the dimensions of the dropdown are finalized, and you can safely perform operations that depend on its new size.ColorPickerResizeEndedEventArgs

Enums

ColorApplyValueMode

ColorApplyValueMode.Instantly
ColorApplyValueMode.UseButtons

ColorDisplayMode

ColorDisplayMode.Default
ColorDisplayMode.Grid
ColorDisplayMode.Palette
ColorDisplayMode.Radial
ColorDisplayMode.Hexagonal
ColorDisplayMode.SpectrumGrid
ColorDisplayMode.MaterialGrid
DropDownOpenMode.None
DropDownOpenMode.Default
DropDownOpenMode.DropDownButton
DropDownOpenMode.Auto
DropDownButtonPosition.Left
DropDownButtonPosition.Right
DropDownButtonPosition.Top
DropDownButtonPosition.Bottom
DropDownPosition.Auto
DropDownPosition.Top
DropDownPosition.Bottom
DropDownPosition.OverlayTop
DropDownPosition.OverlayCenter
DropDownPosition.OverlayBottom
DropDownPosition.CenterBottom
DropDownPosition.CenterTop

ColorPalette

ColorPalette.Default
ColorPalette.Gray
ColorPalette.Red
ColorPalette.Green
ColorPalette.Blue
ColorPalette.Custom

ResizeMode

ResizeMode.None
ResizeMode.Horizontal
ResizeMode.Vertical
ResizeMode.Both

ColorTooltipDisplayMode

ColorTooltipDisplayMode.None
ColorTooltipDisplayMode.Rgb
ColorTooltipDisplayMode.Rgba
ColorTooltipDisplayMode.Hex

ColorValueFormat

ColorValueFormat.Default
ColorValueFormat.Rgb
ColorValueFormat.Rgba
ColorValueFormat.Hex

ColorValueDisplayMode

ColorValueDisplayMode.Default
ColorValueDisplayMode.ColorBox
ColorValueDisplayMode.ColorCode
ColorValueDisplayMode.None