In Development
Last Updated: 15 Aug 2025 12:28 by ADMIN
Scheduled for 2025 Q3 (Aug)
Created by: Juan Angel
Comments: 0
Category: ChipList
Type: Feature Request
8

The default color of the chips is currently set to the base color, and this color cannot be changed. To allow customization, consider adding a ThemeColor parameter, similar to what is available in the Chip component.

=======

TELERIK EDIT:

In the meantime, you can consider CSS-based workarounds. The following example shows a more dynamic approach to the task.

<h3>Telerik CSS Variables</h3>

<TelerikChipList Data="@ChipListDataVariables">
    <ItemTemplate>
        <span class="@context.ColorClass">
            <TelerikSvgIcon Icon="@context.Icon" />
            @context.Text
        </span>
    </ItemTemplate>
</TelerikChipList>

<h3>Colors</h3>

<TelerikChipList Data="@ChipListDataColors">
    <ItemTemplate>
        <span class="c-@context.ColorClass">
            <TelerikSvgIcon Icon="@context.Icon" />
            @context.Text
        </span>
    </ItemTemplate>
</TelerikChipList>

<style>
    @foreach (ChipModel chip in ChipListDataVariables)
    {
        <text> .k-chip:has(.@chip.ColorClass) { background-color: var(--kendo-color-@chip.ColorClass); color: var(--kendo-color-on-@chip.ColorClass); } </text>
    }

    @foreach (ChipModel chip in ChipListDataColors)
    {
        <text> .k-chip:has(.c-@chip.ColorClass) { background-color: @chip.ColorClass; color: white; } </text>
    }
</style>

@code {
    private List<ChipModel> ChipListDataVariables { get; set; } = new List<ChipModel>() {
        new ChipModel()
        {
            Text = "Excel",
            Icon = SvgIcon.FileExcel,
            ColorClass = "base"
        },
        new ChipModel()
        {
            Text = "Audio",
            Icon = SvgIcon.FileAudio,
            Removable = true,
            ColorClass = "primary"
        },
        new ChipModel()
        {
            Text = "Video",
            Icon = SvgIcon.FileVideo,
            ColorClass = "info"
        },
        new ChipModel()
        {
            Text = "Image",
            Icon = SvgIcon.FileImage,
            ColorClass = "success"
        }
    };

    private List<ChipModel> ChipListDataColors { get; set; } = new List<ChipModel>() {
        new ChipModel()
        {
            Text = "Excel",
            Icon = SvgIcon.FileExcel,
            ColorClass = "gray"
        },
        new ChipModel()
        {
            Text = "Audio",
            Icon = SvgIcon.FileAudio,
            Removable = true,
            ColorClass = "red"
        },
        new ChipModel()
        {
            Text = "Video",
            Icon = SvgIcon.FileVideo,
            ColorClass = "blue"
        },
        new ChipModel()
        {
            Text = "Image",
            Icon = SvgIcon.FileImage,
            ColorClass = "green"
        }
    };

    public class ChipModel
    {
        public string Text { get; set; } = string.Empty;
        public ISvgIcon? Icon { get; set; }
        public bool Disabled { get; set; }
        public bool Removable { get; set; }
        public string ColorClass { get; set; } = string.Empty;
    }
}

 

Unplanned
Last Updated: 20 Jul 2023 11:40 by Frank
Created by: Frank
Comments: 1
Category: ChipList
Type: Feature Request
4
I would like to be able to reoder the chips in the ChipList. 
Completed
Last Updated: 21 Mar 2023 14:26 by ADMIN
Release 4.2.0 (26/04/2023)

Keyboard support is only working properly when the ChipList is bound to a List<ChipModel>.  If you try one of your other demos of the chiplist the following will occur:

  • Right Arrow will navigate to the next chip in the list
  • Left Arrow will navigate to the first chip in the list

I would expect that the Left Arrow will navigate to the previous chip in the list.  (As a side note, I would recommend having the the Down Arrow and Up Arrow mimic Right and Left since a screen reader user won't necessarily know that the chiplist is horizontal.)

An example of the problem can be found in this demo:

https://blazorrepl.telerik.com/wdEQFzbC495I2bCP51

Here is a sample where I converted the returned list to List<ChipModel> and bound to that:

https://blazorrepl.telerik.com/cRYwFJvM52yemqN404

In that example, the Left Arrow functions normally.