In Development
Last Updated: 01 Sep 2026 10:41 by ADMIN
Scheduled for 2026 Q4 (Nov)

Example:

<PageTitle>Home</PageTitle>

<div>
    <TelerikTextBox Width="20rem" Placeholder="Pallet" DebounceDelay="1000" @bind-Value="@_textInput" OnChange="@(async (input) => await OnInputChanged(input))" />
</div>
<p>@_textInput</p>


@code {
    private string? _textInput;

    private async Task OnInputChanged(object input)
    {
        Console.WriteLine($"Immediate: function parameter: {input}, bound variable: {_textInput}");
        await Task.Delay(1000);
        Console.WriteLine($"Delayed: function parameter: {input}, bound variable: {_textInput}");
        //Make the OnChange event receive the immediate value when the DebounceDelay is set
    }
}

The DebounceDelay is set to 1 second to highlight the behavior, although we have observed it with delays less than 100 milliseconds when the input is from a barcode scanner and the Enter is part of the scan. Start the sample, type "123" in the input, and hit enter within 1 second.

The output in the console is:
Immediate: function parameter: , bound variable:
Delayed: function parameter: , bound variable: 123

In Development
Last Updated: 01 Sep 2026 07:21 by ADMIN
Scheduled for 2026 Q4 (Nov)
When configuring fields in the PivotGrid Configurator, selected fields that are not assigned to Rows, Columns, or Measures get unchecked after clicking the "Apply" button. This results in users losing their field selections.
Completed
Last Updated: 01 Sep 2026 06:46 by ADMIN
Release 2026 Q4 (Nov)
Created by: Indra
Comments: 2
Category: DropDownList
Type: Bug Report
8

I have a cascading DropDownList scenario with virtual scrolling. When the first DropDownList changes value, the second one should reset its scrollbar to the top, because it now contains new data. This doesn't happen.

Here is a REPL test page.

===

ADMIN EDIT

===

As a workaround for the time being, you may track when the value is changed in the parent DropDownList to dispose and re-initialize the child DropDownList.

Here is an example: https://blazorrepl.telerik.com/mdafHabk585ZtzyV54.

Unplanned
Last Updated: 31 Aug 2026 13:12 by Graeme

The Gantt Timeline header no longer scrolls horizontally together with the content below it.

The issue occurs in version 15.0.0.

A possible workaround is to enable scroll syncing with JavaScript:

https://blazorrepl.telerik.com/GqYiHFvd10Uo0MgN20

@implements IAsyncDisposable
@inject IJSRuntime JS

<TelerikGantt Data="@GanttData"
              @bind-View="@CurrentView"
              Class="scrollable-gantt-1"
              IdField="@nameof(FlatModel.Id)"
              ParentIdField="@nameof(FlatModel.ParentId)"
              Width="700px"
              Height="500px">
    <GanttViews>
        <GanttDayView></GanttDayView>
        <GanttWeekView></GanttWeekView>
        <GanttMonthView></GanttMonthView>
        <GanttYearView></GanttYearView>
    </GanttViews>
    <GanttColumns>
        <GanttColumn Field="@nameof(FlatModel.Id)"
                     Visible="false">
        </GanttColumn>
        <GanttColumn Field="@nameof(FlatModel.Title)"
                     Expandable="true"
                     Width="160px"
                     Title="Task Title">
        </GanttColumn>
        <GanttColumn Field="@nameof(FlatModel.PercentComplete)"
                     Title="Completed"
                     Width="60px">
        </GanttColumn>
        <GanttColumn Field="@nameof(FlatModel.Start)"
                     Width="100px"
                     TextAlign="@ColumnTextAlign.Right">
        </GanttColumn>
        <GanttColumn Field="@nameof(FlatModel.End)"
                     DisplayFormat="End: {0:d}"
                     Width="100px">
        </GanttColumn>
    </GanttColumns>
</TelerikGantt>

<script suppress-error="BL9992">
    function initGanttScrollSync(ganttSelector) {
        const ganttTimelineContent = document.querySelector(ganttSelector + " .k-gantt-timeline .k-grid-content");
        if (ganttTimelineContent) {
            ganttTimelineContent.addEventListener("scroll", onGanttTimelineScroll);
        }
    }

    function disposeGanttScrollSync(ganttSelector) {
        const ganttTimelineContent = document.querySelector(ganttSelector + " .k-gantt-timeline .k-grid-content");

        if (ganttTimelineContent) {
            ganttTimelineContent.removeEventListener("scroll", onGanttTimelineScroll);
        }
    }

    function onGanttTimelineScroll(e) {
        const ganttTimelineHeader = e.target.closest(".k-gantt-timeline").querySelector(".k-grid-header-wrap");
        if (ganttTimelineHeader) {
            ganttTimelineHeader.scrollLeft = e.target.scrollLeft;
        }
    }
</script>

@code {
    private List<FlatModel> GanttData { get; set; } = new List<FlatModel>();
    private List<FlatModel> Data { get; set; } = new List<FlatModel>();

    private GanttView CurrentView { get; set; } = GanttView.Week;

    private int LastId { get; set; } = 1;

    protected override async Task OnAfterRenderAsync(bool firstRender)
    {
        if (firstRender)
        {
            await JS.InvokeVoidAsync("initGanttScrollSync", ".scrollable-gantt-1");
        }

        await base.OnAfterRenderAsync(firstRender);
    }

    public async ValueTask DisposeAsync()
    {
        await JS.InvokeVoidAsync("disposeGanttScrollSync", ".scrollable-gantt-1");
    }

    protected override void OnInitialized()
    {
        GanttData = new List<FlatModel>();
        var random = new Random();

        for (int i = 1; i <= 3; i++)
        {
            var newItem = new FlatModel()
            {
                Id = LastId,
                Title = $"Employee  {i}",
                Start = new DateTime(2020, 12, 10 + i),
                End = new DateTime(2020, 12, 11 + i),
                PercentComplete = Math.Round(random.NextDouble(), 2),
                HasChildren = true
            };

            GanttData.Add(newItem);
            var parentId = LastId;
            LastId++;

            for (int j = 1; j <= 2; j++)
            {
                GanttData.Add(new FlatModel()
                {
                    Id = LastId,
                    ParentId = parentId,
                    Title = $"Employee {i} : {j}",
                    Start = new DateTime(2020, 12, 20 + j),
                    End = new DateTime(2020, 12, 21 + i + j),
                    PercentComplete = Math.Round(random.NextDouble(), 2)
                });

                LastId++;
            }
        }

        base.OnInitialized();
    }

    public class FlatModel
    {
        public int Id { get; set; }
        public int? ParentId { get; set; }
        public string Title { get; set; } = string.Empty;
        public double PercentComplete { get; set; }
        public DateTime Start { get; set; }
        public DateTime End { get; set; }
        public bool HasChildren { get; set; }
    }
}

 

Unplanned
Last Updated: 31 Aug 2026 11:52 by Thoerle
Created by: Thoerle
Comments: 0
Category: Agentic UI Generator
Type: Bug Report
1

Connections to contextapi.telerik.com fail when the client computer is behind a proxy. The observed error is:

Using ContextApi URL: https://contextapi.telerik.com:443
Found license evidence with userId.
gRPC error in ValidateUserLicenseAsync: Unavailable - Error connecting to subchannel.
Unhandled exception. Grpc.Core.RpcException: Status(StatusCode="Unavailable", ...)
   at Grpc.Net.Client.Balancer.Internal.SocketConnectivitySubchannelTransport.TryConnectAsync
   at ContextAPI.ValidateUserLicenseAsync(CancellationToken ct)
   at Program.<Main>$(String[] args)
 ---> System.Net.Sockets.SocketException (10060)
In Development
Last Updated: 31 Aug 2026 11:15 by ADMIN
Scheduled for 2026 Q4 (Nov)

When double-clicking a task in the Gantt Timeline, the popup edit form may not appear. Instead, the vertical blue band for task dragging may show.

The problem is more likely to occur when using a touchpad.

Unplanned
Last Updated: 31 Aug 2026 09:18 by ADMIN
Scheduled for 2026 Q4 (Nov)
Created by: Juwon
Comments: 2
Category: DropDownButton
Type: Feature Request
7
  • I want to track when the popup element of the DropDownButton is opened and closed.
  • I also want to have an Open method via the component reference

===

ADMIN EDIT

===

For the time being, a possible option is to use the DropDownList component that exposes such events. Customize it so it can look and behave similarly to the DropDownButton.

Example implementation: https://blazorrepl.telerik.com/mekbkTPE21kwyMBU05.

Unplanned
Last Updated: 31 Aug 2026 09:18 by ADMIN
Scheduled for 2026 Q4 (Nov)
Created by: Svetoslav
Comments: 4
Category: DateInput
Type: Feature Request
29
Currently, the Date input components apply a mask to the input which restricts the user to type dates. By modifying the mask, or remove it altogether, the users will be able to freely type dates.
Unplanned
Last Updated: 31 Aug 2026 09:18 by ADMIN
Scheduled for 2026 Q4 (Nov)
Created by: Daniel
Comments: 1
Category: TimePicker
Type: Bug Report
1
We recently came across a unique situation where if you try to use a TimePicker within a ListView on a mobile view, the user is unable to change the time. 

Issue: User is unable to switch time from the current value. If you try to select a different hour, minute, second, or AM/PM it snaps back to the current value and will never bind to a new value. If you switch out of mobile view the Adaptive Mode takes it out of full screen and it works. 

Recreation Steps:
  • Create a ListView
  • Create a TimePicker within the ListView
  • Set the Adaptive Mode on the TimePicker to Auto (This is key, if this property is removed it works)
  • Run the page and switch to a mobile view format within the browse

Work-Around: We replaced the ListView with some simple divs and then everything works as intended. Additionally you can also just remove the Adaptive Mode and it will work within a ListView but you no longer get the fullscreen view.


Example Code:

@page "/test-timepicker-listview"

<h3>TimePicker in ListView Test</h3>

<TelerikListView Data="@TestItems" Width="100%">
    <HeaderTemplate>
        <div style="padding: 10px; background-color: #f0f0f0; font-weight: bold;">
            Time Entry Items
        </div>
    </HeaderTemplate>
    <Template>
        <div style="padding: 15px; border-bottom: 1px solid #ddd;">
            <div style="margin-bottom: 10px;">
                <strong>Item:</strong> @context.Name
            </div>
            <div style="display: flex; align-items: center; gap: 10px;">
                <label>Start Time:</label>
                <TelerikTimePicker @bind-Value="@context.StartTime" Format="hh:mm tt" Width="150px"
                    AdaptiveMode="AdaptiveMode.Auto" />
            </div>
            <div style="display: flex; align-items: center; gap: 10px; margin-top: 10px;">
                <label>End Time:</label>
                <TelerikTimePicker @bind-Value="@context.EndTime" Format="hh:mm tt" Width="150px"
                    AdaptiveMode="AdaptiveMode.Auto" />
            </div>
        </div>
    </Template>
</TelerikListView>

@code {
    private List<TimeEntryItem> TestItems { get; set; } = new();

    protected override void OnInitialized()
    {
        // Initialize with some test data
        TestItems = new List<TimeEntryItem>
{
new TimeEntryItem { Id = 1, Name = "Morning Shift", StartTime = new DateTime(2025, 11, 18, 8, 0, 0), EndTime = new
DateTime(2025, 11, 18, 12, 0, 0) },
};
    }

    public class TimeEntryItem
    {
        public int Id { get; set; }
        public string Name { get; set; } = string.Empty;
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }
    }
}

Unplanned
Last Updated: 31 Aug 2026 09:18 by ADMIN
Scheduled for 2026 Q4 (Nov)
Created by: n/a
Comments: 0
Category: MultiSelect
Type: Bug Report
2
If you open a MultiSelect with single tag mode, for example, clicking on an item in the popup toggles the selection, but pressing Enter only selects the item and doesn't unselect it.
Unplanned
Last Updated: 31 Aug 2026 06:52 by ADMIN
Scheduled for 2026 Q4 (Nov)
I modified this sample app: https://github.com/telerik/blazor-ui/tree/master/grid/datasourcerequest-on-server/WebApiFromServerApp.

I am trying to add aggregation to the grouping and display them in the group footers. I am successfully returning the aggregated values but they are not displayed in the GroupFooterTemplate.
Unplanned
Last Updated: 31 Aug 2026 06:15 by ADMIN
When scrolling up in a virtual Grid, the rows "above" are not be kept or loaded like when scrolling down, and it takes a while before they get loaded and shown. This behaviour is not very user friendly and should be corrected.
Completed
Last Updated: 31 Aug 2026 05:17 by ADMIN
Release 2026 Q4 (Nov)

Description

Appointment editing does not work on Chrome for mobile (Android).

Steps To Reproduce

Run the following demo in the Chrome for mobile browser, on a mobile device with Android : https://demos.telerik.com/blazor-ui/scheduler/appointment-editing

  1. Attempt to edit an appointment by double tapping it

Actual Behavior

The popup editor does not show up.

Expected Behavior

The popup editor shows up.

Browser

Chrome

Last working version of Telerik UI for Blazor (if regression)

No response

Completed
Last Updated: 28 Aug 2026 14:08 by ADMIN
Release 2026 Q4 (Nov)
Created by: Hannes
Comments: 0
Category: UI for Blazor
Type: Feature Request
1

The documented lazy loading scenario is not compatible with Telerik UI for Blazor 15.0.0, because of the new ITelerikIconService. Unlike the ITelerikStringLocalizer, there is no alternative way to register this icon service outside Program.cs.

Completed
Last Updated: 28 Aug 2026 11:23 by ADMIN
Release 2026 Q4 (Nov)
Created by: Sam
Comments: 0
Category: DropDownList
Type: Bug Report
0

Bug report

Reproduction of the problem

(bug report only)
The DropDownList (and other dropdown components - ComboBox, MultiColumnComboBox, etc.) render a redundant attribute in their popup ul element: aria-live="polite". Listboxes that use aria-activedescendant for tracking should not also announce via a live region — this creates duplicate/conflicting announcements by screen readers.

Current behavior

(optional)
The popup’s ul element renders aria-live=”polite”.

Expected/desired behavior

Either render aria-live=”off” (e.g., Kendo Angular DropDownList), or don’t render the aria-live attribute at all.

Environment

  • Kendo/Telerik version:
  • jQuery version: x.y
  • Browser: [all]
Pending Review
Last Updated: 28 Aug 2026 10:24 by Andreas
Created by: Andreas
Comments: 0
Category: Charts
Type: Feature Request
1

When using multi-series Chart I know that it is possible to click on legends and hide/show the entire serie. The answer here works for that:

https://feedback.telerik.com/blazor/1442813-show-hide-series-on-legend-click

But how do I achieve the same in a Pie/Donut chart where I only want to hide categories?

In this case I would like to have the exact same behavior where the legend becomes dimmed...

Completed
Last Updated: 28 Aug 2026 09:32 by ADMIN
Release 2026 Q4 (Nov)
Created by: Emma
Comments: 5
Category: Scheduler
Type: Bug Report
2

I have been having issues adding the month view to a Telerik Blazor scheduler component, when there is grouping. It gives a null reference error any time I try to switch to the month view. I also tried it using the available demo for grouping in Telerik REPL, the only difference I found between my code and the demo was that I had used the ItemsPerSlot parameter.  I added this to the demo, and was able to reproduce the error I was seeing, and I have attached the console output from the REPL demo. I believe there is either a bug with the ItemsPerSlot being used in conjunction with grouping on a scheduler component, or some instruction missing from how to set it up properly to prevent this null reference issue. 

Changed code:

<SchedulerMonthView ItemsPerSlot="5"></SchedulerMonthView>

Demo used:

Blazor Scheduler (Event Calendar) Demos - Grouping | Telerik UI for Blazor

 


Unplanned
Last Updated: 27 Aug 2026 14:20 by ADMIN
Created by: Christopher
Comments: 5
Category: Charts
Type: Feature Request
12
Please add Funnel chart type such as the one available in Kendo.
Pending Review
Last Updated: 27 Aug 2026 14:16 by Andreas
Created by: Andreas
Comments: 0
Category: UI for Blazor
Type: Feature Request
3
Can you offer a Pyramid chart as in ASP.NET Ajax, otherwise we cannot upgrade our product to Blazor...
Completed
Last Updated: 27 Aug 2026 10:21 by ADMIN
Release 2026 Q2
Created by: Marc
Comments: 14
Category: PDFViewer
Type: Feature Request
8
I want to be able to pinch the document in the PDFViewer and zoom it. Similar to how PDF is fluently zoomed in and out on pinch if opened in a web browser.
1 2 3 4 5 6