Unplanned
Last Updated: 03 Apr 2026 12:37 by ADMIN
Created by: Stefan
Comments: 1
Category: UI for Blazor
Type: Feature Request
1
it will be nice to have possibility to select multiple values with TelerikDropDownTree like MultiSelect 
Completed
Last Updated: 11 May 2026 08:23 by ADMIN

With an active Blazor trial, the Telerik Document Processing NuGet packages are not found in the Visual Studio Package Manager and in the Terminal as well:

 

Unplanned
Last Updated: 14 May 2026 13:30 by ADMIN

Please consider adding a pluggable runtime localization provider for Telerik UI for Blazor, primarily targeting Blazor WebAssembly scenarios.

This request is not critical for ASP.NET MVC / Razor / Blazor Server, where IDisplayMetadataProvider already provides a valid extensibility point for custom localization. However, Blazor WebAssembly has no equivalent mechanism, which creates a significant limitation.


Problem (Specific to Blazor WebAssembly)

In Blazor WebAssembly:

  • DisplayAttribute is static and reflection‑based
  • It cannot use DI, async logic, tenant context, or database access
  • MVC metadata extensions such as IDisplayMetadataProvider are not available

As a result, Telerik components can only resolve UI text via:

  • DisplayAttribute
  • .resx resources

This makes it impossible to integrate:

  • Database‑driven localization
  • Multi‑tenant localization
  • User‑editable translations
  • Runtime language switching

Why This Matters

In modern Blazor WebAssembly (SPA) applications, localization is often:

  • Runtime‑resolved
  • Backed by a database
  • Tenant‑ and user‑aware

Other libraries already support this model through pluggable localization providers.
A good example is FluentValidation, which allows localization logic to be resolved at runtime via DI, including custom providers and non‑resource‑based implementations.

References:

Because Telerik UI for Blazor does not expose a similar extensibility point, developers are forced to manually specify labels, headers, and enum texts throughout the UI, losing the benefits of automatic localization.


Suggested Direction

Introduce an optional localization provider that Telerik components can use when resolving UI text:

  • Keep full backward compatibility with DisplayAttribute
  • Enable advanced runtime‑based localization scenarios in Blazor WebAssembly where static attributes are insufficient

This would significantly improve Telerik UI’s suitability for enterprise and multi‑tenant Blazor WASM applications, without impacting existing server‑side solutions.

Unplanned
Last Updated: 16 Jul 2026 06:06 by Nicholas
Created by: Nicholas
Comments: 0
Category: UI for Blazor
Type: Feature Request
1

Window, Dialog, and other popups render as children of TelerikRootComponent, which makes CSS Isolation difficult. Current strategy says to use containment selector or global scope css styles.

To allow CSS isolation to pass through, I'd like to see an additional "CssScope" attribute. For example:

<TelerikWindow CssScope="my-custom-scope">
</TelerikWindow>

Then when the window is rendered:

<div ... my-custom-scope>
....
</div>

 

Unplanned
Last Updated: 10 Aug 2026 06:29 by Carl
Created by: Carl
Comments: 0
Category: UI for Blazor
Type: Feature Request
1

Please implement

  • Telerik.DataSource.DataSourceRequest
  • Telerik.DataSource.DataSourceResult

with inheritance from a well-defined C# interface because the current Blazor implementation for DataSourceRequest and DataSourceResult do not do so.  However, if they inherit from interfaces, then that makes more clear and explicit what contract must be used to maintain interoperability with the Telerik controls for Blazor while also enabling alternate customized concrete implementations that developers (such as myself) can extend while also adhering to the required Telerik contract specified in the interface.

Furthermore, with specification by interface, then our customized variants can also be instantiated by dependency injection wherever we want in our code libraries.  Keep in mind that C# interfaces support multiple inheritance while C# classes do not.  So please provide interfaces for the most critical and important classes, especially DataSourceRequest and DataSourceResult in your Telerik.DataSource library.


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.

Declined
Last Updated: 08 May 2019 04:26 by ADMIN
For example we have built a web application using ReactJS which uses video and phone API capabilities from Twilio. If there are built in blazor components, application development becomes easy. 
Declined
Last Updated: 09 May 2019 05:31 by ADMIN

When following the Blazor UI code examples for the Grid, the source for index.cshtml contains the following:

@page "/grid/index"

@using Telerik.Blazor.Components.Grid
@using TelerikBlazor.Shared
@inject HttpClient Http

Notice that the using directive for the Shared component doesn't have a . separating Telerik and Blazor. It should read:

 

@using Telerik.Blazor.Shared
Declined
Last Updated: 22 Aug 2019 06:30 by ADMIN
Load demo, go to issues page, sort by Details.
Declined
Last Updated: 27 Sep 2019 06:18 by ADMIN
Created by: Mark
Comments: 6
Category: UI for Blazor
Type: Bug Report
0

 Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111]
      Unhandled exception in circuit '_2TiBAG0g2G9PCcWgKc-G4zmfFAGiDJEO7pd7Jbjxpk'.
System.IO.FileLoadException: Could not load file or assembly 'Telerik.DataSource, Version=1.2.0.0, Culture=neutral, PublicKeyToken=20b4b0547069c4f8'. The located assembly's manifest definition does not match the assembly reference. (0x80131040)
File name: 'Telerik.DataSource, Version=1.2.0.0, Culture=neutral, PublicKeyToken=20b4b0547069c4f8'
   at System.Signature.GetSignature(Void* pCorSig, Int32 cCorSig, RuntimeFieldHandleInternal fieldHandle, IRuntimeMethodInfo methodHandle, RuntimeType declaringType)

 

Did I miss installing something.

Used the installer telerik.ui.for.blazor.2.1.0.commercial.msi

 

Declined
Last Updated: 22 Oct 2019 12:09 by ADMIN
Created by: Sten
Comments: 1
Category: UI for Blazor
Type: Feature Request
0

In release 2.0.0 it was possible to set default property Visible to "true" for AnimationContainer. That is now gone. How do I make the AnimationContainer visible per default, i.e without calling ShowAsync() in some stage?

Br,

Sten

Completed
Last Updated: 24 Oct 2019 13:56 by ADMIN

On the demo page, when I hover over menu items "Overview" and "Demos" and "Roadmap" it changes background color to gray. When I load it into a project with the verbatim demo code no background color change occurs except on "Roadmap".

 

<TelerikMenu Data="@MenuItems"
             ParentIdField="@nameof(MenuItem.SectionId)"
             IdField="@nameof(MenuItem.Id)"
             TextField="@nameof(MenuItem.Section)">
</TelerikMenu>

@code {
    public List<MenuItem> MenuItems { get; set; }
    public class MenuItem
    {
        public int Id { get; set; }
        public int? SectionId { get; set; }
        public string Section { get; set; }
    }
    protected override void OnInitialized()
    {
        MenuItems = new List<MenuItem>()
    {
            new MenuItem()
            {
                Id = 1,
                Section = "Overview"
            },
            new MenuItem()
            {
                Id = 2,
                Section = "Demos"
            },
            new MenuItem()
            {
                Id = 3,
                Section = "Roadmap"
            },
            new MenuItem()
            {
                Id = 4,
                SectionId = 3,
                Section = "What's new"
            },
            new MenuItem()
            {
                Id = 5,
                SectionId = 3,
                Section = "Roadmap"
            },
            new MenuItem()
            {
                Id = 6,
                SectionId = 3,
                Section = "Release History"
            }
        };

        base.OnInitialized();
    }
}
Duplicated
Last Updated: 02 Mar 2020 13:19 by ADMIN
Created by: Datafyer
Comments: 1
Category: UI for Blazor
Type: Feature Request
0

In data grids it can sometimes be quite helpful to be able to export the content for use outside of the application.

In these cases it can be common to export to CSV or PDF.

Duplicated
Last Updated: 02 Mar 2020 13:18 by ADMIN
Created by: Datafyer
Comments: 1
Category: UI for Blazor
Type: Feature Request
0

It would be helpful to have a TreeGrid control which is quite similar to a data grid however it allows hierarchy relationships among the items.

This would essentially have all the features of the standard data grid however one column would be expandable.

Duplicated
Last Updated: 02 Mar 2020 13:18 by ADMIN
Created by: Datafyer
Comments: 1
Category: UI for Blazor
Type: Feature Request
0
The ability to specify and display a context menu would be very helpful.
Duplicated
Last Updated: 02 Mar 2020 13:17 by ADMIN

Hi,

Ran in to an issue here. To avoid modals getting hidden behind animation containers, we use a class for a div and "wrap" the modal in providing it with a higher z-index than the animation container(s).

However, when using a DatePicker inside this module the calender will be hidden behind the modal (since it is in an animation container).

 

Any suggestion how to overcome this problem?

 

Thanks & br,

Sten

Declined
Last Updated: 08 Nov 2019 12:44 by ADMIN

When I create multiple tabs and each tab has the same type of component, the OnInitialized is only running for the first one I click on.  

Here is a simplified example to demonstrate:

MAIN PAGE:

@page "/tabtest"
@using Telerik.Blazor.Components

<div>Product XYZ</div>

<TelerikTabStrip TabPosition="Telerik.Blazor.TabPosition.Top" @ref="productTabStrip" @bind-ActiveTabIndex="@ActiveTabIndex">
    <TabStripTab Title="Details">
        <div class="container sms-tab-content">
            GENERAL PRODUCT INTRO STUFF HERE
        </div>
    </TabStripTab>

    @foreach (var item in listOfWidgets)
    {
        <TabStripTab Title="@item.WidgetName" Disabled="false">
            <Widget WidgetID="@item.WidgetID" WidgetName="@item.WidgetName" />
        </TabStripTab>
    }

</TelerikTabStrip>

<div style="margin-top: 15px;">
    <div><b>Below is a flat non-tab example of repeating widgets:</b></div>
    @foreach (var item in listOfWidgets)
    {        
        <Widget WidgetID="@item.WidgetID" WidgetName="@item.WidgetName" />        
    }
</div>


@code {

    Telerik.Blazor.Components.TelerikTabStrip productTabStrip;

    public int ActiveTabIndex { get; set; } = 0;

    protected class Widget
    {
        public int WidgetID { get; set; }
        public string WidgetName { get; set; }
    }

    private List<Widget> listOfWidgets = new List<Widget>();

    protected void GetData()
    {
        listOfWidgets.Add(new Widget { WidgetID = 1, WidgetName = "Cog" });
        listOfWidgets.Add(new Widget { WidgetID = 2, WidgetName = "Wheel" });
        listOfWidgets.Add(new Widget { WidgetID = 3, WidgetName = "Bloof" });
    }

    protected override void OnInitialized()
    {
        GetData();
    }

}    

 

WIDGET COMPONENT:

@page "/widget/{WidgetID:int}/{WidgetName}"

<div>
    <div>@WidgetID</div>
    <div>@WidgetName</div>
    <div>@ExtraWidgetInfo</div>
</div>

@code {


    [Parameter] public int WidgetID { get; set; } = 0;
    [Parameter] public string WidgetName { get; set; } = "Nothing";

    private string ExtraWidgetInfo { get; set; } = "Stuff";

    protected override void OnInitialized()
    {
        if (WidgetName == "Cog")
            ExtraWidgetInfo = "This is good info about cogs.";
        if (WidgetName == "Wheel")
            ExtraWidgetInfo = "This is good info about wheels.";
        if (WidgetName == "Bloof")
            ExtraWidgetInfo = "This is good info about bloofs.";
    }

}
Declined
Last Updated: 27 Apr 2020 07:36 by ADMIN
Created by: Ben Hayat
Comments: 6
Category: UI for Blazor
Type: Feature Request
0

Admin edit: While this cannot become a built-in feature, you may find useful the following example: https://github.com/telerik/blazor-ui/tree/master/common/grpc-example

 

Hello Team;

As .Net Core 3 offers gRPC support, I'm suggesting that the Blazor Team, look into some of the components that could automatically talk to backend gRPC services to get data, i.e. Auto Complete or DropDown box.

This way it could simplify different ways of providing datasource to some of these data oriented components.

Hope this suggestion helps!
..Ben

Declined
Last Updated: 02 Jan 2020 16:31 by ADMIN
Created by: Sten
Comments: 4
Category: UI for Blazor
Type: Bug Report
0

I have a TelerikComboBox in an EditorTemplate within a Grid. Code looks like this:


                   <TelerikComboBox Data="@CustomerPayCodes"
                                                     @bind-Value="@PayItemMapInEdit.ClientPayCode.UniqueId"
                                                     Placeholder="Select..."
                                                     Filterable="true"
                                                     TextField="PayCodeDisplayName"
                                                     ValueField="UniqueId"
                                                     @ref="_clientPayCodeComboBox"
                                                     Width="auto"
                                                     Enabled="@(string.IsNullOrEmpty(_payItemTextBoxRef?.Value))">
                                    </TelerikComboBox>

 

Where reference prop looks like this:

 

    private TelerikComboBox<PayCode, Guid> _clientPayCodeComboBox;

 

When adding a new row, the Placeholder text becomes the empty GUID, until I click in the box and then outside, upon it changes to correct "Select...". The GUID is never supposed to be showed at all in the box, that is only the binded value.

 

See attached pictures.

 

Please advice.

 

Br,

Sten

Completed
Last Updated: 05 Dec 2019 13:30 by ADMIN
Release 2.5.0

I have an animationcontainer which I in overridden OnAfterRenderAsync(bool firstRender) call:

                await AnimationContainerSettings.ShowAsync();

...since it is the only way to show the AnimationContainer from start. However, when I in some cases return to the page, the animationcontainer will only show itself if I delay the call with e.g. 1000 ms:


                await Task.Delay(1000);
                await AnimationContainerSettings.ShowAsync();

What could be possible reasons for this be? If I want my AnimationContainer to be visible as default when page is either Initialized or after rendering has occured, where and how should I call ShowAsync()?

Br,

Sten