Unplanned
Last Updated: 27 Jun 2023 11:50 by ADMIN
Created by: Nate
Comments: 3
Category: Grid
Type: Feature Request
7

Similar to the WPF grid I would like the option to require the user hold shift to sort by multiple columns, otherwise the grid would sort by only a single column.

https://docs.telerik.com/devtools/wpf/controls/radgridview/sorting/multiple-column-sorting

Unplanned
Last Updated: 30 Jan 2023 15:40 by Simi
Created by: Simi
Comments: 0
Category: Grid
Type: Feature Request
15

Hello,

Please consider a Grid feature that changes the component layout on mobile devices or narrow screens. The idea is to switch the column layout to a card layout or anything similar to this example: https://css-tricks.com/responsive-data-tables/

It is possible to implement a similar behavior with the Telerik Blazor Grid and MediaQuery components, but it requires reusing the column titles in the CSS code: https://blazorrepl.telerik.com/GnYPmHFR176Jg5Yg02

===

Telerik Blazor team: Everyone who is interested in this feature, please vote for it to help us prioritize. Also, share your opinion about which Grid features you strictly need in the "mobile" layout and which ones you are ready to sacrifice. Some features don't make sense in a card / listview layout anyway, but still, the mobile-friendly Grid may require completely different HTML markup and UX, so some features may need to be completely revamped.

Unplanned
Last Updated: 12 Jan 2023 09:19 by Peter
Created by: Peter
Comments: 0
Category: Grid
Type: Feature Request
1

Hello,

Please consider Grid data binding support for ImmutableArray. Currently, it crashes when the Grid tries to retrieve the total items count at:

Data.AsQueryable().Count();

Immutable*<T> classes are popular in state libraries.

Currently, the possible workarounds are:

  • Execute .ToArray() on the ImmutableArray and bind the Grid to the new array.
  • Bind the Grid to IReadOnlyCollection.
Unplanned
Last Updated: 30 Dec 2022 07:58 by Nemo

If LoadGroupsOnDemand="false", I am able to programmatically expand the groups through the state. However, this is not possible when loading group data on demand.

Please allow programmatically expanding the groups when LoadGroupsOnDemand="true". This should go together with an event (OnStateChanged?) that will fire when LOD groups are expanded or collapsed.

Unplanned
Last Updated: 28 Dec 2022 10:27 by Peter
Created by: Peter
Comments: 0
Category: Grid
Type: Feature Request
7

Feature Request

Currently, when a grid is rendered with 500 rows in a WASM application and expand/collapse action is initiated, it takes a few seconds to finish grouping and rendering. 

Steps to reproduce

1. Create a grid in WASM app.
2. Add 500 rows.
3. Do not enable paging.
4. Group by any field and initiate expand/collapse.
5. All rows are re-rendered which leads to a few seconds delay.

 

 

Unplanned
Last Updated: 21 Dec 2022 13:38 by ADMIN
Created by: Daniel
Comments: 0
Category: Grid
Type: Feature Request
2

A nice feature would be frozen Group Rows.

So if you grouped your data in the Grid and scroll. The Group should stick underneath the header.

As an example look here: https://www.ag-grid.com/angular-data-grid/grouping-sticky-groups/

Unplanned
Last Updated: 30 Nov 2022 13:47 by JeffVisibilEDI

I have applications for which I would like to define the default join operator for Grid filters to be "OR" instead of the default "AND."

Please expose an option to customize the default logical operator in Filter Menu.

Unplanned
Last Updated: 18 Aug 2023 15:43 by Greg
I would like to be able to use complex models (such as those generated from CSLA.NET) for the Grid. 
Unplanned
Last Updated: 16 Nov 2022 11:53 by Rac
I have a Grid whos cumulative column width exceeds the total width of the Grid. I would like to reorder a column outside of the current Grid viewport, but it is not currently available. 
Unplanned
Last Updated: 11 Nov 2022 11:36 by

The Grid selection performance is worse in WASM when there is a command column. Here is a test page with a large page size, which makes this more evident.

<label><TelerikCheckBox @bind-Value="@ShowCommandColumn" /> Show Command Column</label>

<TelerikGrid Data="@DataList"
             SelectionMode="@GridSelectionMode.Single"
             Height="700px">
    <GridColumns>
        <GridColumn Field="@(nameof(DataModel.Pos))" Title="Pos" />
        @if (ShowCommandColumn)
        {
            <GridCommandColumn Width="300px">
                <GridCommandButton Command="Save" Icon="save">Reset Volume</GridCommandButton>
                <GridCommandButton Command="Delete" Icon="delete">Delete</GridCommandButton>
            </GridCommandColumn>
        }
    </GridColumns>
</TelerikGrid>

@code {

    bool ShowCommandColumn { get; set; } = true;

    List<DataModel> DataList { get; set; }

    protected override async Task OnInitializedAsync()
    {
        DataList = new List<DataModel>();
        for (int i = 1; i <= 500; i++)
        {
            DataList.Add(new DataModel
            {
                Pos = i
            });
        }
    }

    public class DataModel
    {
        public int Pos { get; set; }
    }
}

 

Unplanned
Last Updated: 18 Nov 2022 18:09 by Rac
Created by: Rac
Comments: 2
Category: Grid
Type: Feature Request
5

Hello,

Currently the Id and Field properties of GridColumnState in the GridState do not have setters. As a result, these properties are not deserialized, e.g. when sending GridState information from the client to the server in WebAssembly apps.

I would like to determine the existing columns in the Grid and tailor the database request, so that the fetched data includes only the required columns.

Another possible use case is detecting outdated GridState information in localStorage, after the app has been updated and the Grid contains different columns.

Unplanned
Last Updated: 24 Oct 2022 08:22 by Peter

I have a Grid with numerous columns and I am using inline editing. When in edit mode, I'd like to add custom content to each cell - for example, a validation error message from server validation.

To achieve that, I have to use EditorTemplate. However, I want to keep the default editor because I'd like to avoid having to add the relevant control for every single cell each time I add a new Grid.

Unplanned
Last Updated: 21 Oct 2022 11:33 by Jeff
Created by: Jeff
Comments: 0
Category: Grid
Type: Feature Request
4
I would like to refresh the contents of the FilterMenu from my application code. 
Unplanned
Last Updated: 21 Oct 2022 13:13 by ADMIN
Created by: Peter
Comments: 2
Category: Grid
Type: Feature Request
3

The `Context` of `<GridColumn>` is of type `object`, requiring typecasting in order to use the value.

Instead, make `<GridColumn>` generic so that `Context` is strongly typed.  If you use `TItem` as the name for the generic then Blazor will infer it without the user having to specify it.

 

Unplanned
Last Updated: 20 Sep 2022 11:46 by Paul
Created by: Paul
Comments: 0
Category: Grid
Type: Feature Request
1
I would like to add a custom CSS class to the footer cell of each Grid column to cascade some custom styles easily. 
Unplanned
Last Updated: 21 Mar 2024 08:06 by Domenico

Please expose an option to configure the field delimiter for CSV export. I want to set semicolon as field delimiter instead of a comma.

---

ADMIN EDIT

---

Internally the Grid uses SpreadStreamProcessing library to perform the export. That said, a necessary prerequisite to implement the current enhancement is that SpreadStreamProcessing supports settings for changing the delimiter when exporting to CSV. You may vote for the item and follow it to get status email updates.

For the time being, you may customize the exported file to set the desired field separator as suggested in the Grid CSV export - change the comma field delimiter knowledge base article.

Unplanned
Last Updated: 14 Aug 2023 08:23 by ADMIN
Created by: Hendrik
Comments: 0
Category: Grid
Type: Feature Request
3
Please allow the Grid to support in cell editing only via double click. This will give the possibility to preserve single clicks for selection.
Unplanned
Last Updated: 21 Oct 2022 15:34 by Rick

Consider the following example. It will trigger AmbiguousMatchException, because reflection discovers two SpecialProp properties.

<TelerikGrid TItem="@GridModel"
             Data="@GridData"
             AutoGenerateColumns="true">
</TelerikGrid>

@code {
    List<GridModel> GridData { get; set; } = new();

    protected override void OnInitialized()
    {
        for (int i = 1; i <= 3; i++)
        {
            GridData.Add(new GridModel()
            {
                SpecialProp = i,
                Text = "Text " + (i * 111)
            });
        }
    }

    public record GridModel : Base1 { }

    public record Base1 : Base2
    {
        public new decimal? SpecialProp { get => base.SpecialProp / base.HelperProp.GetValueOrDefault(1); set => base.SpecialProp = value.HasValue ? (int)(value.GetValueOrDefault() * base.HelperProp.GetValueOrDefault(1)) : null; }
    }

    public record Base2
    {
        public int? SpecialProp { get; set; }
        public string Text { get; set; }
        public int? HelperProp = 10;
    }
}

Why not replace

private PropertyInfo FieldPropertyInfo => ContainerGenericArgument?.GetProperty(Field);

with something like

PropertyInfo FieldPropertyInfo = ContainerGenericArgument?.GetProperties().FirstOrDefault(p => p.Name == Field);

with the possibility to cache the result from GetProperties()?

Unplanned
Last Updated: 28 Jul 2022 06:21 by ITC

Hello,

I want to set AutoGenerateColumns="true", but exclude some of the class members (fields / columns), which I have declared manually in the GridColumns collection.

Unplanned
Last Updated: 21 Jul 2022 09:25 by TacoWombat
When I override the IsValid method to return a ValidationResult the Incell & Inline edit modes allow the editing to be continued even if an invalid value is present.