Planned
Last Updated: 19 Jun 2025 13:28 by ADMIN
Scheduled for 2025 Q3 (Aug)

I have a grid with inline-edit mode where the items have data annotations validation enabled.
When I click the grid command button "add", and then without typing in anything submit in some way, the validation jumps in as it should.

However, if I - without providing more input and still in the same item's edit mode - just click the "add" button again and then submit the item again, the incomplete item is submitted without any further validation.

This is fatal for my purpose, and I can even reproduce the issue here on the Telerik website's example repl: Blazor Grid Editing Inline Editing - Telerik UI for Blazor (after turning off the option "Confirm Cancel Commands").

I would very much appreciate any guidance on how to circumvent that bug while it ist being worked on, since I couldn't yet find a way how to do it.
(As implied above, the confirmation prompt does prevent the bug, however I don't want to use a prompt if possible.)

Here's a list with some cases concerning this bug:
- tap add, submit => validation
- tap add, tap add, submit => submitted!
- tap add, submit (=> validation), tap add, submit => submitted!

Greetings to the team!

Completed
Last Updated: 16 Jun 2025 08:19 by ADMIN
Release 2025 Q3 (Aug)

Hello:

I am using column menu in a gantt component. In version 8.1.1 the selection of columns to display was working correctly, but when upgrading to version 9.0.0 I get an error using the same implementation. The error received is:

blazor.web.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Blazor.Components.Common.ColumnMenu.ColumnMenu`1.<OnColumnChooserColumnVisibilityChange>d__188[[BlazorRepl.UserComponents.__Main.FlatModel, BlazorRepl.UserComponents, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
   at Telerik.Blazor.Components.Common.ColumnMenu.ColumnMenuChooser.OnApplyClick()
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

You can replicate the error from online examples just by adding or removing visible columns.
https://www.telerik.com/blazor-ui/documentation/components/gantt/gantt-tree/columns/menu

I need to use this functionality with Telerik® UI for Blazor version 9.0.0.

When is it planned to solve this error? Is there a workaround I can apply?

Regards.

Unplanned
Last Updated: 06 Jun 2025 13:58 by Joe
Created by: Joe
Comments: 7
Category: UI for Blazor
Type: Bug Report
6
There is a date picker bug where if you change the value to something invalid (ex: backspace the date or a portion of it), it will still be bound to the previous date value selected. If you click the picker and select the same date again, it will not register it as a date change and will not fire the value changed event. This causes the field to still show as invalid. To the end-user, it looks as if there is a problem and is telling them it is invalid. I had a customer notice this and they kept trying to reselect the date but nothing would happen. 

They eventually typed it manually to fix, which is one way that I agree can be used to resolve. You can also select the wrong date, followed by the right date to get around, but that is a horrible workaround. 

What I believe the experience should be is that when selecting the value in the date picker, regardless of what it thinks is in the field, it should fire the change event and update the text of the field to the date selected (and clear the validation message). That is what I'd like to see as a future change. Note that this happens on ValueChanged, but not OnChanged. OnChanged fires too late though, and doesn't work for most workflows.

We put in a hack solution in some operator UIs where it is very important to not have this happen, but it is a pain to do this for every picker, so most in the system are unhandled. 

The solution was to have OnOpen and OnBlur both manually trigger ValueChanged (which ends up sending default - 1/1/1901) using a reference for the control. This helps us differentiate if it is these events vs an actual date change. When it is OnOpen/OnBlur, we then reupdate the value in the reference and refresh. Note that you end up having to do this twice to "trick" the telerik logic. So we change to default, refresh, and then change to the correct (or last good value - what is already bound) and refresh. Basically now when they leave the field or click the picker, if there is an invalid value and message, it clears and gets replaced with the last good date. If there is a valid date, it does nothing from the user perspective.  
Declined
Last Updated: 02 Jun 2025 13:25 by ADMIN

Context

The website uses OAuth2 (AzureAd) & https with http version 1 :

"Kestrel": {
"EndpointDefaults": {
"Protocols": "Http1"
}

Glitch

Crash systematically reproduced when user opens website.

Workaround

The issue can be can be manually & individually (per user) fixed by:

  • Executing the instruction: Navigation.NavigateTo($"MicrosoftIdentity/Account/SignOut", true);
  • Closing Edge browser
  • Opening back website
  • Answering OAuth 2 challenge (MicrosoftIdentity/Account/SignIn)

Our client is pushing hard for us to find an automatic solution / patch (which doesn't involve making multiple actions for his users like in my workaround).

Duplicated
Last Updated: 30 May 2025 14:24 by ADMIN
Steps to reproduce:
1) Run the following REPL: https://blazorrepl.telerik.com/wJEJlqvC26v5pK9R49
2) There are 2 TelerikDateInput components binded to the same variable, with a DateInputFormatPlaceholder different than the default "dd/MM/yyyy"
3) In the first TelerikDateInput enter a valid date value
4) Note that the second TelerikDateInput assumes the same value, which is correct
5) Enter an invalid value in the first TelerikDateInput by clearing the day part or the month part or the year part
6) The second TelerikDateInput component assumes the default placeholder, instead of the one specified in DateInputFormatPlaceholder
7) Click on the second TelerikDateInput component: it now assumes correctly the placeholder specified in DateInputFormatPlaceholder
The following gif showcases the scenario: https://i.gyazo.com/a9e1f2d3b87cdac19e4e6b71bdeccb38.mp4

This also affects all the Telerik components that have a <*Component*FormatPlaceholder> tag.
Here is a REPL link which contains many components that have a <*Component*FormatPlaceholder> tag: https://blazorrepl.telerik.com/QJaTlglC29a2s8Ys43
Declined
Last Updated: 28 May 2025 17:41 by ADMIN
When trying to use a separate blazor component that references pdf.js, I received the following error ```The API version "4.10.38" does not match the Worker version "4.6.82".```  I was able to narrow it down to the <script src="_content/Telerik.UI.for.Blazor/js/telerik-blazor.js"></script> causing the conflict in versions.  Could this be updated to not expose the pdf.js version that Telerik uses globally, but instead isolate it?
Completed
Last Updated: 23 May 2025 08:32 by ADMIN
Release 9.0.0

Creating a new WebApp project template through the extension fails to build. This is caused by incorrect icon type in the MainLayout.razor file.

To make sure the app is correctly built, the Icon type should be FontIcon.

<TelerikButton Icon="@FontIcon.Menu"
               FillMode="@ThemeConstants.Button.FillMode.Clear"
               OnClick="@( () => DrawerExpanded = !DrawerExpanded )" />
Completed
Last Updated: 23 May 2025 08:31 by ADMIN
Release 9.0.0

It appears there are some issues with encoding special characters in the DataSourceExtensions.ToODataString extension method.

See snippet below. 

var ds = new DataSourceRequest()
{
	Filters = [new FilterDescriptor("FieldName", FilterOperator.IsEqualTo, "Route #")],
	Sorts = []
};
{
Console.WriteLine(ds.ToODataString());

$count=true&$filter=(FieldName%20eq%20%27Route%20#%27)&$skip=0

This results in a malformed url as the last part of of the query is interpreted as a fragment due to this character not being encoded.

Completed
Last Updated: 25 Apr 2025 09:44 by ADMIN

We are using Telerik UI for Blazor (V6.2.0) grid. The first 3 columns (Delivery No, Spot Check, Spotcheck Status) of the grid are frozen/locked. While horizontal scrolling the header text gets overlapped. We have used custom CSS to change the header color.

<TelerikGrid @ref="@GridRef" Data="@dashboardData"
             Reorderable="true"
             SortMode="@SortMode.Single"
             Pageable="true"
             FilterMode="GridFilterMode.FilterRow"
             PageSize="10"
             EnableLoaderContainer="true"
             Sortable="true" Context="inboundContext" OnRowRender="@OnRowRenderHandler" Width="1800px" Height="500px">

    <GridColumns>
        @foreach (var header in tableHeader)
        {
            @if (@header.id == "SpotCheck")
            {
                <GridColumn Field="@(nameof(@header.id))" Width="150px" Title="@header.headerName" Visible="@header.isVisible" Locked="true" Reorderable="false" Filterable="false">
                    <Template>
                        @{
                            var item = (Delivery)context;
                            var isVisible = (item.DeliveryType.Equals("IN") && !string.IsNullOrEmpty(item.EUDRRefAndVerificationId));
                        }
                        <div class="spot-check-btn">
                            <TelerikButton Class="custom-btn custom-btn-secondary" OnClick="()=>reDirectTo(item.Id)" Visible="isVisible">Spot Check</TelerikButton>
                        </div>
                    </Template>

                </GridColumn>
            }
            else if (@header.id == "status")
            {
                <GridColumn Field="@(nameof(@header.id))" Title="@header.headerName" Visible="@header.isVisible" Width="150px">
                    <Template>
                        @{
                            var item = (Delivery)context;
                            <span class="status-data @item.Status.ToLower()">
                                <span class="dot"></span>@item.Status
                            </span>
                        }
                    </Template>

                </GridColumn>
            }
            else if (@header.id == "SpotcheckStatus")
            {
                <GridColumn Field="@header.id" Title="@header.headerName" Width="150px"
                            OnCellRender="@((e) => OnCellRenderHandlerSpotcheckStatus(e))"
                            Visible="@header.isVisible" Locked="true" Reorderable="false">
                </GridColumn>
            }
            else
            {
                <GridColumn Field="@header.id" Title="@header.headerName" Width="150px"
                            OnCellRender="@((x) => OnCellRenderHandler(x, @header.id))"
                            Visible="@header.isVisible" Locked="@header.Locked">
                </GridColumn>

            }
        }
    </GridColumns>
    <NoDataTemplate>
        <p><strong style="color: var(--kendo-color-primary);">No Data Available.</strong></p>
    </NoDataTemplate>
</TelerikGrid>
Declined
Last Updated: 17 Apr 2025 09:54 by ADMIN
Created by: Frank
Comments: 1
Category: UI for Blazor
Type: Bug Report
0

Hello,

I am currently reworking an old webapp with server-side Blazor and Telerik UI for Blazor. I noticed that TelerikDialogs kind of break the rerendering of child components if the TelerikDialog and all of its content are placed inside their own component:

<PageTitle>Home</PageTitle>

<EditWithDialog @ref="EditDialogInside"></EditWithDialog>

Where EditWithDialog is (basically) defined as follows:

<TelerikDialog @ref="Dialog" @bind-Visible="@Visible">
	<DialogTitle>
		Edit ID
	</DialogTitle>
	<DialogContent>
		<div>
			<div>TelerikDialog inside of component</div>
			<TelerikTextBox Value="@AppState.CustomerString" OnChange="@SetID" Width="300px"></TelerikTextBox>
			<TelerikButton OnClick="@GenerateID">Generate ID</TelerikButton>
		</div>
	</DialogContent>
	<DialogButtons>
		<TelerikButton OnClick="@ToggleVisible">Close</TelerikButton>
	</DialogButtons>
</TelerikDialog>

 

However, if the TelerikDialog is placed on a page and its content is placed inside of its own component, everything works as expected:

<PageTitle>Home</PageTitle>
<TelerikDialog @bind-Visible="@Visible">
	<DialogTitle>
		Edit ID
	</DialogTitle>
	<DialogContent>
		<div>
			<div>TelerikDialog outside of component</div>
			<EditWithoutDialog @ref="EditDialogOutside"></EditWithoutDialog>
		</div>
	</DialogContent>
	<DialogButtons>
		<TelerikButton OnClick="@ToggleEditOutside">Close</TelerikButton>
	</DialogButtons>
</TelerikDialog>

EditWithoutDialog.razor:

<TelerikTextBox Value="@AppState.CustomerString" OnChange="@SetID" Width="300px"></TelerikTextBox>
<TelerikButton OnClick="@GenerateID">Generate ID</TelerikButton>

I am using the state-container approach described here, but the problem persists when using two-way binding via parameters.

In this scenario, putting the dialog directly on the page is not a problem, but with larger applications where there's possibly multiple dialogs and a lot more content on one page, this can become very unwieldy and confusing. Considering Blazors emphasis on making components reusable, this also prevents proper use of a customized dialog component that uses the TelerikDialog as a base.

I have attached a small project that implements both versions on a single page for you to test. I have tested using both Edge and Firefox.

Declined
Last Updated: 16 Apr 2025 11:28 by ADMIN

Hi there,

I have a TelerikGrid with a DateTime column. I use a custom FilterEditorFormat which is localizable depending on the user settings, e.g. "dd/MM/yyy HH:mm:ss". Unfortunately, any '/' in the date component is always replaced by the current culture's DateSeparator. Using any other separator works, e.g. '-'. 

Expectation: Use the FilterEditorFormat without modification, unless it's a standard format string like "g" or "D".

I already traced it down to Telerik's FormatHelper class and it seems like a quick fix.

Steps to reproduce:

  • Create a TelerikGrid with a DateTime column and a FilterEditorFormat as shown above.
  • If required, change the DateSeparator to anything else but '/'.
  • Run and open the filter dialog

Please let me know if you need any additional information.

Best regards

Andreas

Declined
Last Updated: 04 Apr 2025 11:51 by DRASKO
Created by: DRASKO
Comments: 2
Category: UI for Blazor
Type: Bug Report
1

Hello,

related to my previous bug report.

When Add / Edit is clicked in the Grid, it causes a Dialog to open. 

The dialog has a Form, and if the model for that form is set through OnParametersSet, the method is called in an infinite loop, and the Dialog never gets shown.

Declined
Last Updated: 27 Mar 2025 11:54 by ADMIN
I am trying to make a custom component to put in the Grid's FilterMenuTemplate that stacks the default contents from FilterMenuType.Menu above the default contents of FilterMenuType.CheckBoxList since there isn't a 'both' option in Blazor like there was in the Silverlight library. I am using the TelerikFilter as a placeholder for now to try and get basic logic working, but if there is a simple solution to directly insert the default menu without my component having to generate the list of allowed filter operators for it's own dropdowns, that would also be appreciated. My goal is to make my component look like the two menu types stacked.

While working on how to connect the filters together, I noticed that the clear button can gets the later part of the CompositeFilterDescriptor stuck in the grid.

Reproducible example:  https://blazorrepl.telerik.com/wzuRPRvB00Vlj1Ac28

With the current configuration of the repl, filtering using only the TelerikCheckBoxListFilter and clicking filter will filter the column as expected, and clicking clear will blank out the checklist but won't reset the grid's filtering from those checkboxes until after ticking a checkbox and clicking filter, then unticking all checkboxes and clicking filter again. If the checkbox gets used then the clear button gets clicked, clicking the filter button after using the TelerikFilter without any checkboxes checked will filter based on the checkboxes the grid remembers ANDed with the new values from the TelerikFilter, again until the checkbox gets used and then manually emptied without using the clear button.

If the order of _textFilterValueInternal and _checkFilterValueInternal in the FilterDescriptors list get reversed, then the grid's filter memory issue gets transferred to the TelerikFilter meaning the issue is presumably with the grid itself. Also, if you use one or more values in both filters, then the clear button works as intended if there weren't already filters stuck inside the grid.

The clear button works as expected if filtering with both the filter and the checklist before clearing the filter.

Example images:

Start:

Check some boxes:


Filtered:


Open filter menu and click "Clear":


Re-open the filter menu:


New filter:


Click "Filter":


Re-open filter menu:


Click "Clear" button again:
Declined
Last Updated: 14 Mar 2025 16:21 by Jonathan
Created by: Michal
Comments: 8
Category: UI for Blazor
Type: Bug Report
5

Hi,

starting with version 6.0, dialogs used together with loading indicator are at wrong z-index order.

- None of hotfixes with "delay" helped.

- users are stucked and cant confirm anything

How to replicate

Click on "Show Confirm with loading indicator". Loading animation should be at BACK of confirm dialog(as at older versions, prior 6.0)

https://blazorrepl.telerik.com/GeOfQMkt56AMkdof43

 

Need More Info
Last Updated: 07 Mar 2025 10:13 by Fabien

I noticed that when the ReadTimeout property of the FileSelect's FileInfoStream is read, the code seem to block completely.

You will find a Blazor Web App project attached to this ticket showcasing the issue.

Duplicated
Last Updated: 04 Mar 2025 15:03 by ADMIN
Created by: Kevin
Comments: 1
Category: UI for Blazor
Type: Bug Report
0

Hello,

i am trying to add a Clear Button inside the DropDownList-Component.

I tried to follow the instructions provided here: How do I add a Clear button to a DropDownList? in UI for Blazor | Telerik Forums respectiveley here: Telerik REPL for Blazor - The best place to play, experiment, share & learn using Blazor.

But unfortunateley, the button is never inside the component. It's always next to it or under the component.

In your example provided above, the button is inside the component.

I would love to have any solution for this one. A clear button is needed quite often.

I also have attached our custom component, where we use the Telerik DropDownList Component.

Thank you

Declined
Last Updated: 04 Mar 2025 14:24 by ADMIN

Hello,

 after uprading fron 7.1.0 to version 8.0.0

on IOS v 16.2, or any version before 17, telerik ui stopped working with this error after navigating between pages:

Microsoft.JSInterop.JSException: Could not find 'TelerikBlazor.initMediaQuery' ('TelerikBlazor' was undefined).

even, when mediaquery is not present at the 2 pages between navigating occurs.(login->landing page)

what iam tried on NEW clean device(so no caching troubles):
- changing order of scripts in app.razor
- adding defer
- addin autostart=false + DOM event
https://www.telerik.com/blazor-ui/documentation/getting-started/what-you-need#javascript-file


- any kind of browsers(on ios everything is webkit-safari)
- independent test on external emulator ip12 ios 16.2
https://appetize.io/app/standalone_lahzvlutkzrno7sqs36cqlj5wy?device=iphone12&osVersion=16.2

attached examples are for comparing of descriped attemps to get it work - both failed. But on v7.1.0, works ok - both.

Is there any breaking changes, which must be modified to get it working?
Thanks

Won't Fix
Last Updated: 28 Feb 2025 17:32 by ADMIN

When downloading files via the TelerikPdfViewer bytes are added before and after the PDF Dokument.

Browsers are able to show the documents but you get and error message if you try to open the downloaded document in Acrobar Reader or in a DMS.

The document attached was download from the demo on your web site.

Duplicated
Last Updated: 14 Feb 2025 12:05 by ADMIN

Hello together,

we are running into a problem with TelerikPdfViewer. When clicking the download button, download starts and performs properly.

BUT: the downloaded PDF file does not match the PDF that was provided via Data="@PdfData". On download something internally prepends some text to the PDF:

–€À³JS.ReceiveByteArray’Æ ‘¢%PDF-1.7
%úûüý
3 0 obj
<</ca 1.00000 /AIS false >>
endobj
5 0 obj

The original PDF file starts at "%PDF-1.7" (end of first line). That part before (including that "JS.ReceiveByteArray") was somehow added during the download workflow by Telerik. We ensured that the PDF data we provided to the viewer (via Data="@PdfData") ist valid. We did so by inspecting the byte[]-Array manually in the debugger as well as downloading it via a JS function to the client.

This is how we are using the TelerikPdfViewer. But the error occurs no matter if we are handling the OnDownload-Event (setting the filename) or not handlign that event at all (i.e. eliminating the OnDownload="@OnPdfDownload" completely)

        <TelerikPdfViewer Data="@PdfData" Width="100%" Height="100%" Zoom="1m" OnDownload="@OnPdfDownload">
            <PdfViewerToolBar>
                <PdfViewerToolBarPagerTool />

                <PdfViewerToolBarSpacer />

                <PdfViewerToolBarZoomTool />
                <PdfViewerToolBarSelectionTool />
                <PdfViewerToolBarSearchTool />

                <PdfViewerToolBarSpacer />

                <PdfViewerToolBarDownloadTool />
                <PdfViewerToolBarPrintTool />
            </PdfViewerToolBar>
        </TelerikPdfViewer>

We use Telerik.UI.for.Blazor (6.2.0).

Thanks for your feedback on this issue and best regards!

Sebastian

Completed
Last Updated: 12 Feb 2025 16:04 by ADMIN
Release 8.0.0

Describe the bug

The class 'k-tabstrip' item is missing in the rendering of the TabStrip component.

 

To Reproduce

1. Go to the following demo and open the DevTools:

https://demos.telerik.com/blazor-ui/tabstrip/overview

2. Check the source of truth:

https://github.com/telerik/kendo-themes/blob/develop/tests/tabstrip/tabstrip.html 

 

Actual results

The class 'k-tabstrip-item' is missing.

Expected behavior

The class 'k-tabstrip-item' to be present.

 

Additional context

ThemeBuilder generates styles for the items of the TabStrip component with selectors like these:

.k-tabstrip .k-tabstrip-items-wrapper .k-tabstrip-items.k-reset.k-tabstrip-items-start .k-item.k-tabstrip-item.k-active .k-link

This works in other technologies, such as Kendo React, but it doesn't take effect in Blazor applications because of the issue.

 

Reported through t.1672526.

1 2 3 4 5 6