Completed
Last Updated: 27 Jan 2021 07:40 by ADMIN
Release 2.21.1

If you set args.IsCancelled=true in any CUD event handler, the loading sign will never go away.

---

ADMIN EDIT

If you don't need to cancel the event (e.g., because remote validation or data operation failed), you should avoid cancelling it - its purpose is to keep the grid in the current mode (edit/insert) when the operation fails so the user does not lose data.

That said, the loading sing should disappear in thsoe cases too, and a workaround is to disable it by setting the EnableLoaderContainer="false" parameter of the grid.

---

Unplanned
Last Updated: 14 Aug 2023 08:22 by ADMIN
Right now, virtual scrolling can show two loading signs - the large spinner for the entire grid, and the placeholder on each row. It should not show the large spinner with virtualization.
Unplanned
Last Updated: 08 Apr 2022 10:07 by ADMIN
Created by: Jason Parrish
Comments: 2
Category: Grid
Type: Feature Request
3

I would like the grid and treelist to honor the DisplayFormatAttribute.NullDisplayText Property so I don't have to use cell templates to change what null values render.

FYI... Here's a REPL of it not respecting it

Completed
Last Updated: 17 Aug 2023 19:34 by Andy
Release 2.25.0

I want to be able to use interfaces and models that are created from a service when working with the grid. A parameterless constructor is not enough for me, I need to be able to instantiate models in a more complex manner.

---

ADMIN EDIT

The tentative event name I have put in the title might vary when the implementation is researched. The goal would still be the same - the grid to provide an event when it needs an instance of the model so you can provide it with one. At the moment this happens when a row enters edit mode, when the filter list needs to be built, and when you are inserting an item (a caveat with the last one might be the OnClick event for the command button - the new event might have to fire before OnClick so it can give you the model).

---

Completed
Last Updated: 08 Dec 2021 14:11 by ADMIN

I have a WASM application and I setup my Grid to use the editor as an editing field in the Grid. When the user types something the application is laggy and it might even hang.

---

ADMIN EDIT

Attached is a sample app that alleviates this a little by using a regular textarea and making editor updates less frequent.

---

Unplanned
Last Updated: 08 Apr 2021 09:00 by ADMIN
Currently, the Shift key is handled only through the selection of row dom elements and not through the checkbox elements.
Unplanned
Last Updated: 13 Apr 2021 06:43 by ADMIN

I noticed after debugging a problem when editing some rather complex rows in a grid that the grid internally calls Telerik.Blazor.Extensions.ObjectExtensions.Clone(...) to create a deep clone for editing. If the object being cloned implements System.ICloneable then this is ignored and an attempt is made to clone it using reflection - the problem is that ObjectExtensions.Clone(...) fails for a number of cases and observing ICloneable would give a developer the means to implement the correct cloning behaviour.

I'm not asking for ObjectExtensions.Clone(...) to be fixed in any way (after all, no matter what you do there will always be some cases it cannot handle), just to use ICloneable where possible.

As an aside, the failed cases were:

  • object has an indexer with get/set (exception thrown by ObjectExtensions.Clone() because it attempts to read the value without passing an index)
  • object implements IEnumerable, including arrays (original object returned without being cloned)
  • object contains a circular reference (stack overflow)
Unplanned
Last Updated: 16 Apr 2021 08:37 by ADMIN
Created by: MurugappanMeyyappan
Comments: 0
Category: Grid
Type: Bug Report
3

---

ADMIN EDIT

At the end of this post you can find the two most common scenarios that can exhibit this problem, and a video that illustrates it.

A potential workaround could be to avoid the second call to onread because that's where the problem lies, with code similar to this:

 

    int readCounts { get; set; }
    protected async Task ReadItems(GridReadEventArgs args)
    {
        if (readCounts != 1) // the second call is skipped - that's where the problem lies
        {
            Console.WriteLine("ONREAD with skip " + args.Request.Skip);
            HttpResponseMessage response = await Http.PostAsJsonAsync("WeatherForecast", args.Request);

            if (response.StatusCode == System.Net.HttpStatusCode.OK)
            {
                DataEnvelope<WeatherForecast> envelope = await response.Content.ReadFromJsonAsync<DataEnvelope<WeatherForecast>>();

                GridData = envelope.CurrentPageData;
                Total = envelope.TotalItemCount;

                StateHasChanged();
            }
        }
        readCounts++;
    }

 

where you may need to extend this a little to also use a flag for whether there was state loaded at all - if there wasn't, then the OnRead call may want to continue because it could be a legitimate user action. Whether this is needed is up to the app and whether your users already have a state saved (if you use OnStateChanged to save the state, they probably already do).

Another possible workaround is to always save Skip=0 in the state so that the user always starts at the top of the grid rather than juuust slightly off from where they expect.

---

Unplanned
Last Updated: 13 May 2021 17:07 by ADMIN
Created by: Wes
Comments: 0
Category: Grid
Type: Feature Request
3

When you set widths to some columns in the grid, the rest of the columns stretch to accommodate the rest of the width. Thus, the row drag column can stretch and become unexpectedly wide. A screenshot of the problem is attached.

Perhaps the GridRowDraggableSettings could have a parameter for the width of the draggable column.

 

<AdminEdit>

As a workaround you can use some CSS to set a width for the Drag column:

<style>
    .custom-row-draggable-col-width.k-grid .k-drag-col {
        width: 100px;
    }
</style>

<TelerikGrid Data="@MyData" Height="400px"
             Class="custom-row-draggable-col-width"
             Pageable="true"
             Resizable="true"
             Reorderable="true"
             RowDraggable="true"
             OnRowDrop="@((GridRowDropEventArgs<SampleData> args) => OnRowDropHandler(args))">
    <GridSettings>
        <GridRowDraggableSettings DragClueField="@nameof(SampleData.Name)"></GridRowDraggableSettings>
    </GridSettings>
    <GridColumns>
        <GridColumn Field="@(nameof(SampleData.Id))" Width="120px" />
        <GridColumn Field="@(nameof(SampleData.Name))" Title="Employee Name" Groupable="false" />
        <GridColumn Field="@(nameof(SampleData.Team))" Title="Team" />
        <GridColumn Field="@(nameof(SampleData.HireDate))" Title="Hire Date" />
    </GridColumns>
</TelerikGrid>

@code {
    private void OnRowDropHandler(GridRowDropEventArgs<SampleData> args)
    {
        //The data manipulations in this example are to showcase a basic scenario.
        //In your application you should implement them as per the needs of the project.

        MyData.Remove(args.Item);

        var destinationItemIndex = MyData.IndexOf(args.DestinationItem);

        if (args.DropPosition == GridRowDropPosition.After)
        {
            destinationItemIndex++;
        }

        MyData.Insert(destinationItemIndex, args.Item);
    }

    public List<SampleData> MyData = Enumerable.Range(1, 30).Select(x => new SampleData
    {
        Id = x,
        Name = "name " + x,
        Team = "team " + x % 5,
        HireDate = DateTime.Now.AddDays(-x).Date
    }).ToList();

    public class SampleData
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Team { get; set; }
        public DateTime HireDate { get; set; }
    }
}

</AdminEdit>

Completed
Last Updated: 06 Jul 2021 12:46 by ADMIN
Release 2.26.0

I have a Grid and if the initial validation fails for a certain cell and the user edits a cell with a valid value on the same row the editing freezes. 

<AdminEdit>

As a workaround, you can provide valid initial values for all cells in the Grid.

</AdminEdit>

Unplanned
Last Updated: 14 Jun 2021 12:27 by ADMIN
Created by: Michael
Comments: 0
Category: Grid
Type: Feature Request
3

We often have grid data with a widely varying quantity of cell content from row to row. We usually present this with constant row height initially to have as much row overview as possible at a glance.

Grabbing the row divider line and individually make it larger or even double click on it to fit the size would be very useful for users.

Completed
Last Updated: 03 Aug 2021 13:40 by ADMIN
Release 2.26.0

Hi,


I am getting an unhandled exception when setting the GridState of a TelerikGrid with the SetState method that has multi-column headers.


Exception:

Unhandled exception rendering component: More than one sibling of element 'col' has the same key value, 'Telerik.Blazor.Components.GridColumn'. Key values must be unique.

Example grid:

<TelerikGrid @ref=@TestGrid Data=@TestData FilterMode=GridFilterMode.FilterMenu Sortable="true" SortMode=SortMode.Multiple TItem="TestDataItem">
   <GridColumns>
       <GridColumn Title="Test Column 1" Field=@nameof(TestDataItem.TestColumn1) />
       <GridColumn Title="Test Column Group" />
          <Columns>
             <GridColumn Title="Test Column 2" Field=@nameof(TestDataItem.TestColumn2) />
             <GridColumn Title="Test Column 3" Field=@nameof(TestDataItem.TestColumn3) />
          </Columns>
       </GridColumn>
   </GridColumns>
<TelerikGrid>

 

I have tried to set the Id or @key of the columns but nothing has fixed this issue. 


Any help you can provide regarding this is appreciated.

Regards 
Completed
Last Updated: 12 Jan 2022 14:32 by ADMIN
Release 3.0.0
Created by: tilt32
Comments: 0
Category: Grid
Type: Bug Report
3

The TelerikGrid is kind of missing a "None" Value in the enum for the EditMode.

We need to disable the edit mode based on a value from the model (role access restricted), and I don't see any way this is possible without copy-pasting the entire grid under an if statement.

 

------ADMIN EDIT-------

A possible workaround at the moment is to set the "Editable" parameter of the columns to "false" or not use a command column with "edit".

Another workaround can be to attach a OnEdit handler and cancel the event based on the view model flag only. If the user cannot edit - always cancel.

Completed
Last Updated: 04 Aug 2021 17:02 by ADMIN
Created by: Matthias
Comments: 2
Category: Grid
Type: Bug Report
3

After the update I get the following error message:

/...Views/ViewRoute.razor(13,13): Error CS0012: The type 'SortDescriptor'is defined in an assembly that isnot referenced. You must add a reference to assembly 'Telerik.DataSource, Version=2.0.10.0, Culture=neutral, PublicKeyToken=29ac1a93ec063d92'. (CS0012)

the package is installed...nevertheless I get the error

<PackageReference Include="Telerik.UI.for.Blazor" Version="2.26.0" /> <PackageReference Include="Telerik.DataSource" Version="2.0.10" />

 

at this position
  GridState<Wegpunkte> desiredState = new GridState<Wegpunkte>()
        {
            SortDescriptors = new List<SortDescriptor>()
        {
                new SortDescriptor {Member = "TourPos", SortDirection = ListSortDirection.Ascending}
            }
        };
 
Unplanned
Last Updated: 09 Sep 2021 07:44 by ADMIN
I would like to recommend that a check box be added to the GridColumnMenuChooserGroup, so the entire group can be selected or deselected.  
Duplicated
Last Updated: 12 May 2022 17:03 by ADMIN
Created by: Jimmy
Comments: 1
Category: Grid
Type: Bug Report
3
Groups with load on demand cannot be deserialized properly and throw NullReferenceException
Completed
Last Updated: 03 Dec 2021 14:32 by ADMIN
Release 2.30.0
Created by: Radko
Comments: 0
Category: Grid
Type: Feature Request
3
I would like to be able to set constraints for min and max width for the draggable resizing introduced by the Resizable parameter of the Column. Meaning, if I set a min width of 50 pixels, I would like for the column to not be able to shrink beyond this point when manually resized by the draggable handle.
Unplanned
Last Updated: 28 Dec 2021 15:37 by Nemo
Created by: Nemo
Comments: 11
Category: Grid
Type: Feature Request
3

Hi, please expose the debounce delay as a property of TelerikGrid so we can set how soon virtualized columns are loaded after the user scrolls.

**Admin Edit**

This feature request requires research, and if such DebounceDelay parameter can work with good quality in all cases - it will be implemented. Additionally, we will revise the feature together with loading next set of columns if it will be applicable.

**Admin Edit**

Duplicated
Last Updated: 26 Apr 2022 10:51 by ADMIN
I have a record with id 1. In the OnEdit event, we check if the Edited item has Id == 1 and if so we cancel the edit. Now, the UI, if the Grid is in Read mode (not in Edit) clicking on the Grid cell that has Id == 1 does not trigger the edit, thus the editor is not rendered. On the other hand, if we open a previous cell that is editable and we click enter (tab) multiple times the non-editable cell will enter Edit mode and the editor is rendered.
Unplanned
Last Updated: 03 Dec 2021 10:40 by ADMIN
Selected items are not preserved when loading the state when the component is bound to ExpandoObjects