Completed
Last Updated: 14 Aug 2023 12:37 by ADMIN
Release 4.5.0 (08/30/2023) (R3 PI2)
Created by: Goodwill
Comments: 0
Category: Grid
Type: Bug Report
0

Grid popup editing throws about parameterless constructor even when I use the OnModelInit event.

The inline and incell edit modes are still working.

The regression occurs in version 4.2.0.

Duplicated
Last Updated: 15 Sep 2023 10:52 by ADMIN
Created by: Adrian
Comments: 2
Category: Grid
Type: Bug Report
0
 

**Description**:
I've encountered an issue with the Telerik Grid component in Blazor where caching the grid state, specifically the filtering state, leads to a casting exception upon reloading the page.

**Steps to Reproduce**:
1. Set up a Telerik Grid with a nullable enum column (e.g., `LeadStatuses? Status`).
2. Apply a filter to the `Status` column.
3. Save the grid state (including the filter state) to cache.
4. Refresh the browser.
5. Load the grid state from cache and apply it to the grid.

**Expected Behavior**:
The grid should load with the previously applied filter without any issues.

**Actual Behavior**:
A casting exception occurs, specifically: "Specified cast is not valid."

**Additional Information**:
- The issue seems to be related to filtering and saving state to the grid. When the column is removed, the error doesn't occur.
- Clearing the filter from the cached state for gid will work.
- The exact error message is: 
```
Unhandled exception rendering component: Specified cast is not valid.
 
Unplanned
Last Updated: 22 Sep 2023 11:08 by ADMIN
Created by: Sebastian
Comments: 1
Category: Grid
Type: Bug Report
0
When grid is grouped by one column and LoadGroupsOnDemand is set to true clicking 2nd group before the first one is finished loading results in an exception. It can be reproduced here: Telerik REPL for Blazor - The best place to play, experiment, share & learn using Blazor. (group only by single column).
Declined
Last Updated: 25 Sep 2024 08:50 by ADMIN
Created by: Joshua
Comments: 2
Category: Grid
Type: Feature Request
0
The options available in the grid popup edit settings are very convenient because a substantial jump in complexity/effort is needed to use a custom edit form. It would be great to have additional parameters that correspond to the window position and draggable properties. 
Unplanned
Last Updated: 11 Oct 2023 08:38 by Kaya
I want to group the Grid by a Visible="false" column through the State feature of the component. I have also customized the Header of the column by using the Title parameter (or the Display data annotation attribute) and in the UI it works as expected - the Group header label respects the custom value from the Title/Display. When I export the Grid to Excel, the custom value is not respected. 
Declined
Last Updated: 12 Oct 2023 05:44 by Michal
Created by: Michal
Comments: 2
Category: Grid
Type: Bug Report
0

Hello,

after updating to the versin 4.6.0 from 4.5.0, almost all svg icons dissapeared(inside the grid). No erros, no console warnings.

Is there some breaking changes or aditional steps how to bring them back?

Original markup without changes(first blue button in example should have "play" icon at the beginning):


<TelerikButton OnClick="@(_ => OZRowCmd(null,20))" Icon="@FontIcon.Play" Title="Zahájit novou" Class="bg-primary" Size="@Telerik.Blazor.ThemeConstants.Button.Size.Large">Zahájit novou</TelerikButton>
Thanks
Duplicated
Last Updated: 06 Nov 2023 13:46 by ADMIN
Created by: Michal
Comments: 1
Category: Grid
Type: Bug Report
0

Hello,

 when using grid with multiple-selection mode and row template, ONLY single row selection works. Not able to select multiple rows. Grid somehow internally "reverts"(lose) selection to single row.

Here is full detail, with video and sample "what acts weird". Start with the post " Michal - Posted on: 19 Oct 2023 08:38":

https://feedback.telerik.com/blazor/1463819-grid-row-template-with-selection-unsure-how-to-bind-to-selected-item

 

Simplified reproducible sample from Nadezhda Tacheva(thanks), has that issue also - try to select multiple rows:

REPL sample

Video with the problem AND expected result(video is based on sample posted at same feedback above "Posted on: 19 Oct 2023 08:38":

https://feedback.telerik.com/attachment/download/1120622

 

Fully working example(recorded video) in VS - GridCheckBoxColumn in sample "IS HACK!", not required at all(just hint, which can be removed):

@using System.Collections.Generic;
@using System.Dynamic;
    <span>Selection bind not working as expected:</span>
    <TelerikGrid TItem="ExpandoObject"
    @bind-SelectedItems="@gSelectedItems"
                 OnRowClick="@OnGridRowClicked"
                 SelectionMode="GridSelectionMode.Multiple"
                 OnRead=@gHLReadItems
                 RowHeight="60">
        <RowTemplate Context="ctx">
            <td>
                @{
                    var it = (ctx as IDictionary<string, object>);
                    @(it["Name"].ToString())
                }
            </td>
        </RowTemplate>
        <GridColumns>
            <GridCheckboxColumn CheckBoxOnlySelection="true" Visible="false" @key="@("sIDX1")" SelectAll="false" />
            <GridColumn Field="Name" FieldType=@typeof(string) Title="Name" />
        </GridColumns>
    </TelerikGrid>
<span>WORKs OK:</span>
    <TelerikGrid TItem="ExpandoObject"
    @bind-SelectedItems="@gSelectedItems"
                 OnRowClick="@OnGridRowClicked"
                 SelectionMode="GridSelectionMode.Multiple"
                 OnRead=@gHLReadItems
                 RowHeight="60">
        <GridColumns>
            <GridCheckboxColumn CheckBoxOnlySelection="true" Visible="false" @key="@("sIDX2")" SelectAll="false" />
            <GridColumn Field="Name" FieldType=@typeof(string) Title="Name" />
        </GridColumns>
    </TelerikGrid>
        
@code
{
    private List<ExpandoObject> RowData;
    IEnumerable<ExpandoObject> gSelectedItems { get; set; } = Enumerable.Empty<ExpandoObject>();
    protected override void OnInitialized()
    {
        
        RowData = new List<ExpandoObject>();
        dynamic obj0 = new ExpandoObject();
        obj0.Name = "Tester";
        RowData.Add(obj0);
        dynamic obj1 = new ExpandoObject();
        obj1.Name = "Testovicz";
        RowData.Add(obj1);
        dynamic obj2 = new ExpandoObject();
        obj2.Name = "Selectant";
        RowData.Add(obj2);
    }
    protected async Task gHLReadItems(GridReadEventArgs args)
    {
        //RowData are readen from DYNAMIC source, cannot add any NEW property to it
        args.Data = RowData;
        args.Total = 3;
    }
    protected void OnGridRowClicked(GridRowClickEventArgs args)
    {
        var it = args.Item as ExpandoObject;
        if (gSelectedItems.Any(x => x == it))
        {
            gSelectedItems = gSelectedItems.Where(x => x != it);
        }
        else
        {
            gSelectedItems = gSelectedItems.Union(RowData.Where(x => x == it));
        }
    }
}

thanks

Declined
Last Updated: 10 Nov 2023 11:51 by ADMIN
Created by: Paul
Comments: 1
Category: Grid
Type: Feature Request
0
Please can you add the ability for the Blaazor grid to allow a PageSize="Auto", where it would automatically select a dynamic PageSize value that would fit the available grid height - avoiding scrolling or wasted space.
Completed
Last Updated: 26 Dec 2023 08:31 by ADMIN
Created by: Daniel
Comments: 3
Category: Grid
Type: Feature Request
0
When the user hides a column in the grid and then edits the row with the popup edit form the hidden column does not show up in the edit form. It would be nice to allow the user to hide grid columns but still be able to edit the field that is hidden.
Declined
Last Updated: 06 Mar 2024 17:00 by ADMIN

Greetings,

When using single selection mode, a row can be selected either by clicking the checkbox or by clicking on the rest of the row. There is no difference at all. Now, let's say I have a grid with multiple selection mode enabled, e.g.:

<TelerikGrid Data="listOfFoos" SelectionMode="GridSelectionMode.Multiple">
    <GridColumns>
        <GridCheckboxColumn SelectAll="true" SelectAllMode="GridSelectAllMode.All"  />
        <GridColumn Field="@nameof(Foo.Name)" Title="Name" />
    </GridColumns>
</TelerikGrid>

public class Foo { public string Name { get; set; } }

public List<Foo> listOfFoos = [ new Foo{Name="First"}, new Foo{Name="Second"}, new Foo{Name="Third"} ];


When we click an unselected row, the behavior varies depending on where we click exactly:

  • if we click on the checkbox of the unselected row, the unselected row becomes selected. Previously selected rows are still selected. Everything is fine.
  • if we click on the unselected row but not on the checkbox (e.g. on another column), the unselected row becomes selected but previously selected rows are unselected.

This notably makes multiple selection impossible if we click on the row but not on the checkbox and gives the impression we are using single selection mode. It is especially strange if we consider the existence of the CheckBoxOnlySelection parameter of <GridCheckboxColumn> whose name suggests we can select using the rest of the row by default.

Declined
Last Updated: 15 May 2024 08:26 by ADMIN

 

Hi,

 it seems that grid.GetState() and FilterDescriptors, contains +1 "dummy" object.

- If it is by design, ok, BUT then, how to bind this filter descriptor to the ie TelerikFilter? = It displays that dummy object as it is, and confusing end users. Or how to "identify 100%" that is some kind of dummy value to be trashed?

How to reproduce:

1 run the repl demo

2 put "a" into the first colum(Name) filter

3 click button and observe the content of filter descriptors(serialized below the grid - RED is wrong, Green is expected as ok)

similar, but not the same(iam came from here):

https://feedback.telerik.com/blazor/1606424-manually-setting-the-grid-filters-via-the-grid-state-causes-multiple-composite-filters-on-one-column-where-only-one-filter-descriptor-for-that-member-was-set

 

Thanks for the tip, clarification, or removing that redundant values.

Declined
Last Updated: 31 Oct 2024 07:06 by ADMIN
Created by: Elliot
Comments: 5
Category: Grid
Type: Feature Request
0

Hi,

I have spent a while looking for the feature to move the Footer Template to the first line of the Telerik grid. Is this currently possible with a parameter I'm unaware of? How possible would this be to do if not. 

Kind Regards,

Elliot

Declined
Last Updated: 21 Nov 2024 07:03 by ADMIN

There seems to be no System.Type that will allow a GridColumn to be specified with the 'FieldType' attribute to receive a TelerikTimePicker

typeof(DateTime) --> TelerikDateTimePicker

typeof(?) --> TelerikTimePicker

 

<TelerikGrid Data="@gridDataExpando" Width="100%" Sortable="false" Pageable="false" Resizable="true" ShowColumnMenu="false"
             ScrollMode="@GridScrollMode.Scrollable"
             Height="100%"
             EditMode="@GridEditMode.Incell"
             OnUpdate="@UpdateHandlerExpando"
             OnEdit="@EditHandler">
   <GridColumns>
      @{
         var firstItem = gridDataExpando.FirstOrDefault();
         if (firstItem != null)
         {
            var dictionaryItem = firstItem as IDictionary<string, object>;
            foreach (var item in dictionaryItem)
            {
               if (!item.Key.Contains("Id"))
               {
                  <GridColumn Field="@(item.Key)" FieldType="@(this.GetDataType(item.Key))" Width="140px" DisplayFormat="{0:hh:mm:ss tt}">
                     <HeaderTemplate>
                        <span>@item.Key</span>
                    </HeaderTemplate>
                   </GridColumn>
               }
            }
         }
      }
   </GridColumns>
</TelerikGrid>


Declined
Last Updated: 27 Jan 2025 12:26 by ADMIN

Cuando agrego GridAggregates el exportador de excel no me permite dejar limpia la fila de Totales (FooterTemplates) para unicamente dejar el Dato me coloca la siguiente estructura: "aggregate_sum: X" y al remover el aggregate_sum de los archivos de recursos me deja el texto ": X" por lo que la cadena sigue sin quedar limpia.

De igual manera en mi grid view tengo la columna de Totales y no la agrega al archivo que se exporta los totales como se ve en la imagen:

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

I've customized the GridColumnMenu to only show the Column Chooser and assign Locked Columns (disabled all others, including Sortable):

<GridColumnMenuSettings
	FilterMode="@ColumnMenuFilterMode.None"
	Lockable="true"
	ShowColumnChooser="true"
	Groupable="false"
	Sortable="false"
	Reorderable="false">
</GridColumnMenuSettings>

I'm handling the sorting by clicking directly on the column header.   In that configuration, the menu icon is highlighted for the actively sorted column:

This is misleading because the user cannot affect the sorting via the column menu.  If Sortable = "false", I'd expect no indicator difference in the column headers.

Unplanned
Last Updated: 31 Jan 2025 14:51 by Alexandre

Consider the following scenario:

  1. A user focuses a specific Grid cell through keyboard navigation.
  2. The user tabs out of the Grid and then tabs back in.

In this case, the Grid should focus the last focused cell in step 1. Instead the Grid focuses the first header cell.

  1. Go to https://demos.telerik.com/blazor-ui/grid/keyboard-navigation 
  2. Click a data cell.
  3. Click `Tab` or `Shift + Tab` to exit the Grid data area.
  4. Click `Shift + Tab` or `Tab` to go back to the Grid data area.
  5. Compare with https://www.telerik.com/kendo-angular-ui/components/grid/keyboard-navigation 
Declined
Last Updated: 07 Mar 2025 06:24 by ADMIN
Hi,

Upgraded to .NET 9 and Telerik UI For Blazor 8.0.0 and the grid header text is no longer centered for the columns that are set to do so.

I ran a backup copy of the same project that was using .NET 8. The columns centered okay. I then upgraded that same project to .NET 9 without making any code changes and the columns no longer centered.

Thanks,
Joe
Completed
Last Updated: 18 Jun 2025 09:40 by ADMIN
Release 2025 Q3 (Aug)
Created by: Rami
Comments: 1
Category: Grid
Type: Bug Report
0

The Grid component creates an invalid property value in its style for the <table> tag like shown below (some of the contents omitted for brevity). Notice the "width: ;" which should have a value in it.

<table style="height: auto; width: ;"></table>

This can be observed for example by creating a page with the below code and the using the browsers developer tools to examine the elements. Both Grids will have their CSS width property be invalid.

<TelerikGrid Data="@data" AutoGenerateColumns="true">
</TelerikGrid>

<TelerikGrid Width="200px" Data="@data" AutoGenerateColumns="true">
</TelerikGrid>

@code {
    private List<Product> data = new () { 
        new Product() {
            Id = 2,
            Name = "Hello product"
        }    
    };

 public class Product {
        public int Id { get; set; }
        public string Name { get; set; } = string.Empty;
    }
}

Declined
Last Updated: 21 Jun 2025 02:07 by Philip

Hello

 

The new adaptive toolbar I think doesn't follow the same style as other components, particularly scrollable tabs.

https://demos.telerik.com/blazor-ui/grid/adaptive

The UI scroll buttons shouldn't just disable, they just be hidden/removed from the UI altogether when they are not active (as it is pretty confusing to the user otherwise) - they should only appear when they need to appear. They also take up real-estate for no value.

Telerik already have the same concept in the UI for the scrollable-tabs seen here;

https://demos.telerik.com/blazor-ui/tabstrip/scrollable-tabs

So I see some inconsistency between the 2 UI's and think they should not appear as does on scrollable tabs.

 

Unplanned
Last Updated: 08 Sep 2025 10:51 by Stephen

When Virtual Scrolling is enabled and the grid is set to inline editing, clicking the Add button does not start editing on the first click. The button must be clicked twice for a new row to enter edit mode.

Steps to Reproduce:

1. Open this example - https://blazorrepl.telerik.com/QfaZEibY50abpby200

2. Scroll down the grid.

3. Click the "Add" button.

Upon the first click, a new row is inserted but then immediately closed. You have to click it a second time to insert a new row.