Declined
Last Updated: 03 Jun 2019 12:30 by Andrew
Created by: Andrew
Comments: 2
Category: UI for Blazor
Type: Feature Request
4

All controls (such as TelerikGrid, TelerikDropDownList, etc) should have a "Visible" property. This bindeable boolean value controls whether the control is visible on the page or not:

<TelerikGrid Visible="@IsVisible" />

@functions {

protected bool IsVisible

}

This is a much better method than surrounding the entire control's markup in an @if(IsVisible) block, since that causes the control to get removed/added to the dom at runtime. This can cause many issues such as the control's constructors being fired multiple times, the dom getting "jiggled" about unecessarily.

I feel the "Visible" property is a cleaner way to hide controls.

Unplanned
Last Updated: 05 Jan 2022 14:08 by ADMIN
Created by: Philip
Comments: 3
Category: UI for Blazor
Type: Feature Request
4

Hello

 

The column group headers functionality is great, however it messes with the export to excel/csv, as the headers no longer align on the 1 row.

 

Just seeing if there was a way to export to csv/excel but ignore the column group headers? Maybe a feature on the <GridCsvExport ExportGroupHeaders=false /> option?

 

Or is there a way to turn off column group headers programmatically? Then this could be removed then readded on the events; OnBeforeExport, OnAfterExport

 

Cheers

Phil

Completed
Last Updated: 26 May 2022 14:01 by ADMIN
Created by: AztecConsulting
Comments: 2
Category: UI for Blazor
Type: Feature Request
4

As a user, I would like to ability to pin one to many row(s) in a grid so that the pinned rows are always the first rows at the top of the grid.

If a filter is applied, the pinned records that match the filter should be displayed first.  Non matching rows may be hidden.

If a column sort is changed, the pinned rows should be sorted then the unpinned rows should be sorted to ensure the pinned rows are always at the top of the grid.  

As a developer, Pinning should be a optional feature configured when the grid is setup.

This essentially would only add a data populated "pin" column the user can toggle on or off, but the real effort in this request is around the sorting and filtering to ensure when the user clicks a column the event is captured, and the sort is submitted as pin column, then the selected column, to ensure the pin takes precedent.  

 

Duplicated
Last Updated: 02 Mar 2020 12:51 by ADMIN
Created by: Datafyer
Comments: 4
Category: UI for Blazor
Type: Feature Request
4

In many cases in a grid you may have additional data that the user can view however you don't want to show it as a default.

In these cases it would be nice to create the column normally, set the visible="false", and then have a built in column chooser feature.
This chooser would be a simple popup with a list of columns where the user can check whether visible or not.

Duplicated
Last Updated: 19 Mar 2022 10:15 by ADMIN
Created by: RafaƂ
Comments: 1
Category: UI for Blazor
Type: Feature Request
4
Hello

Telerik.DataSource.Extensions ToDataSourceResultAsync (https://docs.telerik.com/blazor-ui/api/Telerik.DataSource.Extensions.QueryableExtensions) should support Cancellation token as well as https://docs.telerik.com/aspnet-mvc/api/Kendo.Mvc.Extensions/QueryableExtensions.
It would be useful.
Unplanned
Last Updated: 16 Nov 2022 14:03 by Meindert
Created by: Meindert
Comments: 0
Category: UI for Blazor
Type: Feature Request
4

Please add group header template for the select components. There are two goals:

  • Customize the group items' appearance.
  • Implement custom behaviors, for example - batch select or unselect of all items in the group by clicking on the group header.
Duplicated
Last Updated: 25 Jul 2022 16:11 by ADMIN
Created by: Mr Chas
Comments: 5
Category: UI for Blazor
Type: Feature Request
4

I want to use a token to access the Telerik NuGet feed for my CI/CD builds, instead of using credentials.

---

ADMIN EDIT

At the moment, the options for that are:

  • Have an account in your company that is assigned a license and is used for builds. A trusted human developer can also use it to access the components and do their daily work. They should make sure to not change their password, or to notify the people who can update it in the secrets in the CI/CD pipeline immediately.
  • Make your own private nuget feed and ensure the Telerik packages you want in it are available there. It can be as simple as a network location internal to your company. Make sure that this feed is not publicly available, however. When you need to upgrade, make sure to copy the new packages to that feed too so automated builds can access them.

You can read more details and some troubleshooting tips in the CI and CD Automated Builds section of our documentation.

The goal of this request is to provide a way to detach the user credentials from the builds so that they can use their accounts freely, and only provide necessary keys to the build pipeline, and those keys can be updated/revoked as needed. This would also avoid manual work on downloading and copying new nuget packages to a custom feed.

---

Unplanned
Last Updated: 23 May 2022 12:38 by ADMIN

Greetings,

I am curious if you intend on offering any means of control for the height of an appointment cell within the scheduler. For us it is in the Timeline view with Resources. I have downloaded the source code and implemented the functionality myself and am willing to share my changes. It ultimately performs three functions:

1. Creates a new parameter on the SchedulerTimeViewBase.cs so that it is end user facing.

2. Alters the code in the ContentTableBase.cs to assign the AllDayAppointmentOuterHeight property with this new parameter's value (plus 1).

3. Alters the AppointmentRendererBase.cs to assign the AllDayAppointmentHeight property with this new parameter's value.

Additional changes are necessary to the Models and Interfaces.

We have used the JS version of this for several years and need the additional real estate on the scheduler. This is the only means that I could figure to alter the height as the position of the cells and resource rows are computed on the back end. Any alterations using a CSS class during OnItemRender will produce cells that overlap each other and/or overflow to subsequent rows.

Unplanned
Last Updated: 27 Mar 2024 10:54 by Nathan
Created by: Nathan
Comments: 2
Category: UI for Blazor
Type: Feature Request
4
I'd like to be able to change the built-in icons that the components use. I currently can do that with custom solutions but I need an option to easily change all icons on a global app level (e.g. all save icons, all arrow-down icons, etc.). I have a custom icon set and I want to ensure consistency in the icons used throughout the app.
Duplicated
Last Updated: 14 Jul 2022 05:33 by ADMIN
Created by: Jeremy
Comments: 0
Category: UI for Blazor
Type: Feature Request
4

Hello,

Please add an expandable and collapsible panel (container), similar to the ExpansionPanel in Kendo UI.

Completed
Last Updated: 22 Jun 2021 19:26 by ADMIN
Release 2.25.0
Created by: Emanuel
Comments: 0
Category: UI for Blazor
Type: Feature Request
4

Hi

I would like a "Steper" as the one you have in your MVC product.

Completed
Last Updated: 09 Nov 2020 18:12 by ADMIN
Release 2.19.0
Created by: Ben Hayat
Comments: 3
Category: UI for Blazor
Type: Feature Request
4
Hello Team;

This is more or less a question and request.
With the new "Lazy Loading" feature of Blazor .Net 5, is it possible that Telerik can use this feature internally, to load only components/library as the app needs it at runtime to save initial load time?

Thanks!
Unplanned
Last Updated: 25 Feb 2020 10:32 by ADMIN
If Possible a basic UI Layout manager for page layout and component layouts be nice, click and drag... something like radzen but working within Visual Studio..
Completed
Last Updated: 12 Feb 2020 09:48 by ADMIN
Release 2.7.1
Created by: Marco
Comments: 1
Category: UI for Blazor
Type: Feature Request
4

When you have LazyLoading() enabled on an EF context, the grid throws errors similar to

 

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.NotImplementedException: This is a DynamicProxy2 error: The interceptor attempted to 'Proceed' for method 'Void set_LazyLoader(Microsoft.EntityFrameworkCore.Infrastructure.ILazyLoader)' which has no target. 

 

Here is a sample of the service registration that causes the issue

 

            services.AddDbContext<ApplicationDbContext>(options =>
            options
            .UseLazyLoadingProxies() // this causes the problem
            .UseSqlServer(Configuration.GetConnectionString("DefaultConnection")), ServiceLifetime.Transient);

 

Here is the full stack trace

Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer: Warning: 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.Grid.GridContentCell`1.get_PropInfo()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.get_Value()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.BuildRenderTree(RenderTreeBuilder __builder)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderInExistingBatch(RenderQueueEntry renderQueueEntry)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue()
Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost: Error: Unhandled exception in circuit '-ctJ-ctr0bp4mytl5k9AxUWcoK3LyC8ybsC6BxFhGhA'.

System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Blazor.Components.Grid.GridContentCell`1.get_PropInfo()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.get_Value()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.BuildRenderTree(RenderTreeBuilder __builder)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderInExistingBatch(RenderQueueEntry renderQueueEntry)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue()
[2020-01-31T17:09:22.390Z] Error: System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Blazor.Components.Grid.GridContentCell`1.get_PropInfo()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.get_Value()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.BuildRenderTree(RenderTreeBuilder __builder)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderInExistingBatch(RenderQueueEntry renderQueueEntry)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue()
[2020-01-31T17:09:22.393Z] Information: Connection disconnected.
Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer: Warning: Unhandled exception rendering component: Exception has been thrown by the target of an invocation.

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.NotImplementedException: This is a DynamicProxy2 error: The interceptor attempted to 'Proceed' for method 'Void set_LazyLoader(Microsoft.EntityFrameworkCore.Infrastructure.ILazyLoader)' which has no target. When calling method without target there is no implementation to 'proceed' to and it is the responsibility of the interceptor to mimic the implementation (set return value, out arguments etc)
   at Castle.DynamicProxy.AbstractInvocation.ThrowOnNoTarget()
   at Castle.DynamicProxy.Internal.CompositionInvocation.EnsureValidTarget()
   at Castle.Proxies.Invocations.IProxyLazyLoader_set_LazyLoader.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.DynamicProxy.StandardInterceptor.PerformProceed(IInvocation invocation)
   at Castle.DynamicProxy.StandardInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.AttivitaProxy.set_LazyLoader(ILazyLoader value)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, Object[] index)
   at Telerik.Blazor.Components.TelerikGridBase`1.Clone(TItem original)
   at Telerik.Blazor.Components.TelerikGridBase`1.Edit(GridCommandEventArgs args)
   at Telerik.Blazor.Components.TelerikGridBase`1.ExecuteCommand(Object args)
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Telerik.Blazor.Components.Grid.GridRowBase`1.OnExecuteCommand(GridCommandEventArgs commandArgs)
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Telerik.Blazor.Components.Grid.GridContentCell`1.ExecuteCommandAsync(String commandName)
   at Telerik.Blazor.Components.Grid.GridContentCell`1.EditAsync()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.OnClick()
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)
Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost: Error: Unhandled exception in circuit '-ctJ-ctr0bp4mytl5k9AxUWcoK3LyC8ybsC6BxFhGhA'.

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.NotImplementedException: This is a DynamicProxy2 error: The interceptor attempted to 'Proceed' for method 'Void set_LazyLoader(Microsoft.EntityFrameworkCore.Infrastructure.ILazyLoader)' which has no target. When calling method without target there is no implementation to 'proceed' to and it is the responsibility of the interceptor to mimic the implementation (set return value, out arguments etc)
   at Castle.DynamicProxy.AbstractInvocation.ThrowOnNoTarget()
   at Castle.DynamicProxy.Internal.CompositionInvocation.EnsureValidTarget()
   at Castle.Proxies.Invocations.IProxyLazyLoader_set_LazyLoader.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.DynamicProxy.StandardInterceptor.PerformProceed(IInvocation invocation)
   at Castle.DynamicProxy.StandardInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.AttivitaProxy.set_LazyLoader(ILazyLoader value)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, Object[] index)
   at Telerik.Blazor.Components.TelerikGridBase`1.Clone(TItem original)
   at Telerik.Blazor.Components.TelerikGridBase`1.Edit(GridCommandEventArgs args)
   at Telerik.Blazor.Components.TelerikGridBase`1.ExecuteCommand(Object args)
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Telerik.Blazor.Components.Grid.GridRowBase`1.OnExecuteCommand(GridCommandEventArgs commandArgs)
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Telerik.Blazor.Components.Grid.GridContentCell`1.ExecuteCommandAsync(String commandName)
   at Telerik.Blazor.Components.Grid.GridContentCell`1.EditAsync()
   at Telerik.Blazor.Components.Grid.GridContentCell`1.OnClick()
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)
Duplicated
Last Updated: 28 Sep 2020 09:05 by ADMIN
Created by: Emran
Comments: 1
Category: UI for Blazor
Type: Feature Request
4

I would really be happy to see your WPF Diagram Control (https://www.telerik.com/products/wpf/diagrams.aspx) ported to Blazor. 

Do you have any plans to do so?

Unplanned
Last Updated: 18 Sep 2020 07:44 by ADMIN
Created by: Scott
Comments: 1
Category: UI for Blazor
Type: Feature Request
4
This is a feature request to update the Telerik Icons to include versions that better match iOS, Material and Fluent design.  The idea is to either default to same icon set or dynamically choose the icon set based on the device accessing the site.  This would be especially beneficial for hybrid applications.
Duplicated
Last Updated: 06 Mar 2024 07:01 by ADMIN
Created by: Lance
Comments: 3
Category: UI for Blazor
Type: Feature Request
3

Telerik.Blazor.DialogFactory

User types in an input string, but they have to click 'ok' with the mouse to proceed - typing enter does nothing

 

Completed
Last Updated: 11 Oct 2021 06:36 by ADMIN
Release 2.28.0

Optimise/Tailor inputs for screen reader users

globally for Telerik Blazor controls/inputs components we would prefer the ability to assign aria attributes. This will enable my organisation's user experience to improve for people relying on screen readers. 

aria-labelledby will enable us to stack labels for inputs in a group.

aria-describedby will enable us to provide additional information in context to an input, without the need for users to jump out of the input and find it.

Declined
Last Updated: 15 Dec 2023 09:14 by ADMIN

Hi,

It would be VERY helpful if you integrated "Prevent the Grid from wrapping text in multiple lines and show ellipsis" into grid as an option (so we would not have to write separate code and style).

I think this is one of the most needed features since grids almost always have data that wraps line.

BR, Smiljan

Unplanned
Last Updated: 29 Nov 2023 14:06 by ADMIN
Created by: Roberto
Comments: 0
Category: UI for Blazor
Type: Feature Request
3

When using the OnRead event of the ComboBox there is no way to retrieve the selectedItem because the list of items that is populated is internal.

There are 2 workaround but they are not ideal:

- Saving the list of items returned by the OnRead event into a parallel list and then retrieve the selectedItem from it -> the problem is that there will be 2 identical lists in memory and, if scaled, might cause problems:

CachedSitesList = result.Items;

args.Data = result.Items;
args.Total = (int)result.TotalCount;

- Retrieving the selectedItem by calling the DB using the Id of the item -> the problem is that it's one more request to add to the DB and the performance is going to decrease if scaled, also it seems useless as the item is already present in memory.

We suggest adding a function to return the selectedItem to improve performance and scalability of the component.