Duplicated
Last Updated: 23 Feb 2022 19:58 by ADMIN
When you enter PopUp editing mode in the Grid the windows is not responsive and goes off the screen. That causes inability to operate with the buttons (cannot either close it or save the changes).
Duplicated
Last Updated: 09 Jun 2022 14:13 by ADMIN

Initially, the grid is filtered by "Is FTE? = True". It shows 20 lines. The sum of "Hours" should be 800. But the footer shows another value (depends on the random logic which you've implemented). See the attached screenshot.

Then, when changing the filter, the correct sum is shown.

But I need the correct value initially...

Re: I've just found out that using the OnRead event instead of the standard data binding solves the issue. Better said, it's a possible work-around.

 

Duplicated
Last Updated: 03 Nov 2020 20:48 by Andrew

On initialization of the Grid the oDataString is correct, but when I apply a filter or apply a sort to a Grid column the ToODataString extension method generates an incorrect request URL. If I revert back to 2.16.0 everything works as expected. 

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
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.
Duplicated
Last Updated: 02 Mar 2020 13:22 by ADMIN
Created by: Shaun
Comments: 2
Category: Grid
Type: Bug Report
1

Consider the following scenario:

<TelerikGrid Data="Animals" Sortable="true">
  <TelerikGridColumns>
    <TelerikGridColumn Field="Color"></TelerikGridColumn>
    <TelerikGridColumn Field="Breed"></TelerikGridColumn>
  </TelerikGridColumns>
</TelerikGrid>

@functions {
  public List<Animal> Animals { get; set; } = new List<Animal> { new Dog { Breed = "Sheepdog", Color = "Black" } };

  public class Animal { public string Color { get; set; } }
  public class Dog : Animal { public string Breed { get; set; } }
}

Everything renders fine for the grid until you attempt to sort by Breed, which results in the following exception:

System.ArgumentException: Invalid property or field - 'Breed' for type: Animal
   at Telerik.DataSource.Expressions.MemberAccessTokenExtensions.CreateMemberAccessExpression(IMemberAccessToken token, Expression instance)

 

Not sure what is going on under the hood here, but perhaps this could be fixed by looking at the type of the object, rather than the underlying list?    I'm aware that this can be fixed by changing the data source to List<Dog> , but I think this use case of using a base-class is useful for many dynamic scenarios (think dynamic columns, etc)

Duplicated
Last Updated: 24 Jun 2020 15:41 by ADMIN
I have a grid with many columns in a Blazor server app. If you have results in the grid the scrollbars appear. If you filter a column that you have to scroll to see and there are no results the grid clears, the scrollbars disappear and the column is again scrolled out of view. In this situation there is no way to clear the filter. I didn't see an option to always show the scrollbars.
Duplicated
Last Updated: 27 Jan 2021 10:27 by ADMIN

If a new item for a grid is created and the CreateHandler is cancelled due to some validation error, the new loading indicator does not disappear.

protected async void CreateHandler(GridCommandEventArgs args)
{

  var myItem = (MyModel) args.Item;

   if (!IsValid(myItem))
   {
       args.IsCancelled = true;
       return;
    }

   ...

}

Regards,

René

Duplicated
Last Updated: 06 Apr 2022 17:57 by Nemo

This isn't a bug per say, but with the latest Telerik Blazor update, the GridCommandEventArgs Field and Value properties are now deprecated.  When updating a specific cell in a grid using InCell edit mode, how am I able to know which specific field and value are updated when the OnUpdate event gets called?  Before the latest update, I had the following code:

 

protected override void OnGridRowUpdate(GridCommandEventArgs args)
        {
            validationMessage = ValidateField(args.Field, args.Value);

        }

I realize I have the updated values using args.Item, but I don't want to have to validate the entire row every time I update a cell.  Is there still a way to know what cell I updated, or is that information no more?

Thank you,

Steve

Duplicated
Last Updated: 14 Oct 2021 11:54 by ADMIN
Created by: Huy
Comments: 1
Category: Grid
Type: Bug Report
1

Hi Support,

I found a bug that Telerik grid filter for blazor on web assembly version not working for dynamic datasource. While the server one work just fine. Please see the video for more detail. I am also attach the two solution for your investigation.

https://www.loom.com/share/c876a98500ea4a8fbacd3aa30179485d

 

This same peice of code work in Server version but not for client version

<TelerikRootComponent>
    <TelerikGrid Data="@GridData"
                 Height="350px"
                 Sortable="true"
                 Pageable="true"
                 SortMode="@SortMode.Single"
                 FilterMode="@GridFilterMode.FilterMenu"
                 FilterMenuType="@FilterMenuType.CheckBoxList"
                 PageSize="10">
        <GridColumns>
            <GridColumn Field="Col1" Width="80px" Locked="true" />
            <GridColumn Field="Col2" Width="140px" />
        </GridColumns>
    </TelerikGrid>
</TelerikRootComponent>

@code { public List<dynamic> GridData = new List<dynamic>();

    protected async override Task OnInitializedAsync()
    {
        for (int i = 1; i < 10; i++)
        {
            dynamic row = new ExpandoObject();
            row.Col1 = $"col1_{i}";
            row.Col2 = $"col2_{i}";
            GridData.Add(row);
        }

    } }

 

Please help me fix this issue ASAP as our product need this filter to ship the release.

Thanks

Huy Nguyen

Duplicated
Last Updated: 06 Oct 2023 07:00 by ADMIN
Created by: Hannes
Comments: 1
Category: Grid
Type: Bug Report
1

Hello,

The Grid header and data cells become misaligned if the user changes the page zoom level. The right padding of the Grid header area resizes, according to the zoom level, but the scrollbar width remains the same. This triggers the misalignment.

The problem disappears after browser refresh at the current zoom level.

Duplicated
Last Updated: 03 May 2024 06:32 by ADMIN

When the user drags a third column to the Grid Group Panel, it ends up being second, instead of last. It looks like each new column is inserted at index 1, instead of appended last (when this is the user's intent).

@using Telerik.DataSource

<p>Group by a third column, so that it should come last in the Group Panel:</p>

<TelerikGrid @ref="@GridRef"
             Data="@GridData"
             Pageable="true"
             Sortable="true"
             Groupable="true"
             FilterMode="GridFilterMode.FilterRow"
             OnStateInit="@( (GridStateEventArgs<Employee> args) => OnGridStateInit(args) )"
             OnStateChanged="@( (GridStateEventArgs<Employee> args) => OnGridStateChanged(args) )">
    <GridColumns>
        <GridColumn Field="@nameof(Employee.Name)" />
        <GridColumn Field="@nameof(Employee.Team)" />
        <GridColumn Field="@nameof(Employee.Salary)" />
        <GridColumn Field="@nameof(Employee.OnVacation)" />
    </GridColumns>
</TelerikGrid>

@code {
    private TelerikGrid<Employee>? GridRef { get; set; }

    private List<Employee> GridData { get; set; } = new();

    private void OnGridStateInit(GridStateEventArgs<Employee> args)
    {
        args.GridState.GroupDescriptors = new List<GroupDescriptor>();

        args.GridState.GroupDescriptors.Add(new GroupDescriptor()
        {
            Member = nameof(Employee.Team),
            MemberType = typeof(string)
        });

        args.GridState.GroupDescriptors.Add(new GroupDescriptor()
        {
            Member = nameof(Employee.OnVacation),
            MemberType = typeof(bool)
        });
    }

    private async Task OnGridStateChanged(GridStateEventArgs<Employee> args)
    {
        if (args.PropertyName == "GroupDescriptors" && args.GridState.GroupDescriptors.Count > 2 && GridRef != null)
        {
            var secondGroupDescriptor = args.GridState.GroupDescriptors.ElementAt(1);

            args.GridState.GroupDescriptors.Remove(secondGroupDescriptor);
            args.GridState.GroupDescriptors.Add(secondGroupDescriptor);

            await GridRef.SetStateAsync(args.GridState);
        }
    }

    protected override void OnInitialized()
    {
        var rnd = new Random();

        for (int i = 1; i <= 20; i++)
        {
            GridData.Add(new Employee()
            {
                Id = i,
                Name = "Name " + i,
                Team = "Team " + (i % 4 + 1),
                Salary = (decimal)rnd.Next(1000, 3000),
                OnVacation = i % 3 == 0
            });
        }
    }

    public class Employee
    {
        public int Id { get; set; }
        public string Name { get; set; } = string.Empty;
        public string Team { get; set; } = string.Empty;
        public decimal Salary { get; set; }
        public bool OnVacation { get; set; }
    }
}

Duplicated
Last Updated: 02 Mar 2020 13:27 by ADMIN

Hello,

I'm trying the grid component and I'm able to add a row to the grid using the embbed editor. But I wanted to add an item externally to the list:


<button @onclick="@MyClick">Add item</button>

 

void MyClick()
{
    MyData.Add(new SampleData() { ID = 46, Name = "from click" });
    StateHasChanged();
}

The new line does not appear on the grid but if I add a second item through the embbed editor then I get the 2 items!

I also try to replace the List<MyData> by an ObservableCollection<MyData> unsuccessfully.

 

Thanks & regards,

 

Duplicated
Last Updated: 02 Mar 2020 13:24 by ADMIN
Created by: Shaun
Comments: 1
Category: Grid
Type: Bug Report
0

Here is how this page looks on mac, multiple browsers: https://demos.telerik.com/blazor-ui/grid/grouping

 

 

Notice that the columns are misaligned.  I believe this is because the scrollbar isn't rendered on a mac if it is "disabled" (there is nothing to scroll). 

Probably the best solution would be for it to render like this on all browsers, but have the columns line up (get rid of the spacer in the end of the header row) as the 'empty' scrollbar is not attractive :)

Duplicated
Last Updated: 02 Mar 2020 13:15 by ADMIN
Created by: Krister Svärd
Comments: 1
Category: Grid
Type: Bug Report
0

Hello!

The multiple selection functionality in the grid no longer works as expected.

The select check boxes doesn't seem to do anything and the only way to select something is when clicking on the actual row.

The problem is also present on your demo page.

ADMIN EDIT: Duplicate of https://feedback.telerik.com/blazor/1443720-selection-does-not-work-when-clicking-on-the-checkbox-works-when-clicking-the-row

 

https://demos.telerik.com/blazor-ui/grid/selection?_ga=2.224802330.1814754023.1575533932-806712588.1566825973&_gac=1.19805898.1574257348.Cj0KCQiA5dPuBRCrARIsAJL7oejqGKCIKhHZYlO3abQIbwwTOsvIVlWTqJ7CCdov38W-l8cArPTRpjEaAt0jEALw_wcB

Best regards.

Duplicated
Last Updated: 30 Jul 2020 16:46 by ADMIN

Video here

https://drive.google.com/file/d/12em-oc6xRJ_JjbFSANK9IqKDkK0f7p6y/view

 

Select an item in the grid and press and hold down arrow...


System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Blazor.Components.TelerikGridBase`1.FocusPagerAsync()
   at Telerik.Blazor.Components.TelerikGridBase`1.FocusCellAsync(GridNavigationCommandEventArgs args)
   at Telerik.Blazor.Components.TelerikGridBase`1.FocusAdjacentCellAsync(GridNavigationCommandEventArgs args, Int32 rowIndexOffset, Int32 columnIndexOffset)
   at Telerik.Blazor.Components.TelerikGridBase`1.FocusBottomCellAsync(GridNavigationCommandEventArgs args)
   at Telerik.Blazor.Components.TelerikGridBase`1.ExecuteNavigationCommandAsync(GridNavigationCommandEventArgs args)
   at Telerik.Blazor.Components.TelerikGridBase`1.ExecuteCommand(Object args)
   at Telerik.Blazor.Components.Grid.GridRowBase`1.OnExecuteCommand(GridCommandEventArgs commandArgs)
   at Telerik.Blazor.Components.Grid.GridDataCellBase`1.ExecuteCommandAsync(GridCommandEventArgs args)
   at Telerik.Blazor.Components.Grid.GridNavigableCellBase`1.ExecuteNavigationCommandAsync(String commandName, Int32 rowIndexOffset, Int32 columnIndexOffset, KeyboardEventArgs args)
   at Telerik.Blazor.Components.Grid.GridNavigableCellBase`1.ProcessKeyDown(KeyboardEventArgs args)
   at Telerik.Blazor.Components.Grid.GridContentCell`1.ProcessKeyDown(KeyboardEventArgs args)
   at Telerik.Blazor.Components.Grid.GridNavigableCellBase`1.OnKeyDown(KeyboardEventArgs args)
   at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)

Duplicated
Last Updated: 22 Mar 2020 14:47 by ben

Likely related to https://feedback.telerik.com/blazor/1432615-support-for-nested-complex-models 

Issue - Filtering / Sorting on a column that is bound to a complex object fails to generate the proper OData string.

Example Grid Code, three columns, column 1 and 3 are bound to a complex class, column 2 just a string:


<TelerikGrid Data=@sysVars.Dtos Pageable="true" Sortable="true" FilterMode="Telerik.Blazor.GridFilterMode.FilterRow" PageSize="20" TotalCount=@sysVars.Count OnRead=@ReadItems>
        <GridColumns>
            <GridColumn Field=@nameof(SysVar.SysVarType.Name) Title="Type" Editable="false">
                <Template>
                    @{
                        var data = context as SysVar;
                        @data.SysVarType.Name
                    }
                </Template>
            </GridColumn>
            <GridColumn Field=@nameof(SysVar.Value) Title="Value">
                <Template>
                    @{
                        var data = context as SysVar;
                        var link = SysVarDto.FrontEndEditUrl(data.Id.Value);
                        <NavLink href=@link>@data.Value</NavLink>
                    }
                </Template>
            </GridColumn>
            <GridColumn Field=@nameof(SysVar.Hierarchy.Description) Title="Hierarchy">
                <Template>
                    @{
                        var data = context as SysVar;
                        @data.Hierarchy.Description
                    }
                </Template>
            </GridColumn>
        </GridColumns>
    </TelerikGrid>

The values bound to the grid are made up of a complex object.  For the sake of the example


 public class SysVar 
    {
        public string Value { get; set; }

        public Hierarchy Hierarchy { get; set; }

        public SysVarType SysVarType { get; set; }
}

public class Hierarchy 
{
      public string Description { get; set; }
}

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

Right now I know I can't have the Grid render SysVarType.Name, so I use a custom cell and everything works.  However, if I try to sort/filter on my complex columns, SysVarType or Hierarchy the resulting OData string that is generated is incorrect.

Example of what is should look like, from a Telerik Grid in my React application if I sort on the sysVarType column:


https://localhost:44335/odata/v1/SysVarOData?$count=true&$expand=sysVarType($select=name),hierarchy($select=description)&$skip=0&$top=20&$orderby=value,sysVarType/name

 

Same string generated by the Telerik Grid in Blazor


Note: I can't sort two columns at the same time, not a huge issue at this time.

What is failing is the $orderby= doesn't return sysVarType/name and only returns name, causing a 400 on my backend as the class SysVar doesn't have a name field.

Duplicated
Last Updated: 04 Aug 2020 09:12 by ADMIN

With using the Grid, I have several GridCommandButtons. Instead of displaying the button with an icon followed by text, I wanted to display just the icon and use the TelerikTooltip to display the text on hover. When I set the GridCommandButton.Title and inspect the DOM, there is no title attribute on the button even though the description of the GridCommandButton.Title property reads "The title attribute of the Button".

 

<TelerikGrid @ref="@Grid"
                Data="@Data"
                Pageable="true"
                Groupable="false"
                Sortable="true"
                FilterMode="GridFilterMode.FilterMenu"
                Resizable="true"
                Reorderable="true"
                EditMode="GridEditMode.Popup"
                SelectionMode="GridSelectionMode.Multiple"
                PageSize="5"
                OnUpdate="@UpdateHandler"
                OnDelete="@DeleteHandler">
    <GridColumns>
        <GridColumn Field="@nameof(UserInfo.UserName)" Title="User Name" Width="100px" />
        <GridColumn Field="@nameof(UserInfo.Email)" Width="100px" />
        <GridColumn Field="@nameof(UserInfo.FirstName)" Title="First Name" Width="100px" />
        <GridColumn Field="@nameof(UserInfo.LastName)" Title="Last Name" Width="100px" />
        <GridColumn Field="@nameof(UserInfo.PhoneNumber)" Title="Phone #" Width="100px" />
        <GridCommandColumn Width="190px">
            <GridCommandButton Command="Save" Icon="save" ShowInEdit="true">Save</GridCommandButton>
            <GridCommandButton Title="Edit" Command="Edit" Icon="edit"></GridCommandButton>
            <GridCommandButton Title="Delete" Command="Delete" Icon="delete"></GridCommandButton>
            <GridCommandButton Command="Cancel" Icon="cancel" ShowInEdit="true">Cancel</GridCommandButton>
            <GridCommandButton Title="Reset Password" OnClick="@((args) => ResetPasswordModal.Show(((UserInfo)args.Item).Id))" Icon="@IconName.Lock"></GridCommandButton>
            <GridCommandButton>Roles</GridCommandButton>
            <GridCommandButton>Profiles</GridCommandButton>
        </GridCommandColumn>
    </GridColumns>
    <GridToolBar>
        <GridCommandButton Title="Refresh" OnClick="@LoadData" Icon="@IconName.Reload"></GridCommandButton>
        <GridCommandButton Title="Add User" OnClick="@(() => CreateUserModal.Show())" Icon="add"></GridCommandButton>
    </GridToolBar>
</TelerikGrid>
Duplicated
Last Updated: 26 Apr 2021 18:36 by ADMIN
Created by: Marco
Comments: 1
Category: Grid
Type: Bug Report
0

I'm trying manual source operations with grouping and aggregates, but I get: InvalidOperationException: No generic method 'Sum' on type 'System.Linq.Enumerable' is compatible with the supplied type arguments and arguments. No type arguments should be provided if the method is non-generic

 

I've edited the sample in the docs of manual source operations with grouping and added some aggregates.

 

Since some feats with the grid are not compatible with others, it is not easy to understand what is feasible and what is not. I know from the docs that virtual scolling is not compatible with many feats, or that group load on demand is not comaptible with aggregates, but I don't found any about aggregates with manual operations.

 

 

Please find the attached demo project

Duplicated
Last Updated: 29 Aug 2022 10:26 by Sofronis

As you can see in the provided example : https://blazorrepl.telerik.com/QcaiPbkL56qf6XQ747

I have the following situation. I'm using a custom editor template with two-way binding for the  column : OrderToEdit.ShipCity. If I change the value of this column in a row and press Enter, Tab or mouse focus out very quickly (immediately after value change),  UpdateHandler is triggered before the valueChanged event of the context and as a result changes are not shown. If there is a delay ( i.e 1 second ) all works fine. This is not happening when i'm using the builtin editor GridEditorType.TextBox. Could you provide me a solution ? 

There is another problem. if a click inside a cell edit mode is triggered. But if i click in a button in the toolbar or in column menu the cell remains open is not closed. I think this should not happen.

1 2