Unplanned
Last Updated: 30 May 2024 14:27 by Shawn

### Bug report

When there is an initially hidden column in the Grid with multi-column headers, the hiding/showing of columns through the ColumnMenu does not work correctly.

### Reproduction of the problem

1) Hide a column in the Grid with the Hidden(true) option.

2) Hide a column through the Grid column menu.

3) The header of the column that is hidden is added to the previous visible column.

4) Show the same column through the column menu - it does not render back as expected.

The issue is caused by the a mismatch in the column group header rendering:

  • Group header:
    • aria-haspopup="dialog" is missing;
    • data-title="{group name}" is missing;
    • the title in the group header must be rendered as:

<span class="k-cell-inner"><span class="k-link"><span class="k-column-title">Product Information</span></span></span>
  • Header:
    • aria-haspopup="menu" is missing;

 

### Environment

* **Telerik UI for ASP.NET MVC version 2024.2.514

Unplanned
Last Updated: 21 May 2024 14:26 by Abhi

Bug report

There are multiple differences in the theme files. In the theme file added by the NuGet browser-specific styles are missing and calc values differ. Likely the issue is due to autoprefixer and postcss-calc being used in the kendo-themes repo: https://github.com/telerik/kendo-themes/blob/develop/postcss.config.js
and not being used in theme compilation logic in the kendo repo:
https://github.com/telerik/kendo/blob/production/gulpfile.js#L55C38-L55C39
https://github.com/telerik/kendo/blob/master/build/gulp/sass.js

Reproduction of the problem

  1. In an ASP.NET MVC app install the Telerik.UI.for.AspNet.Mvc NuGet package.
  2. The NuGet package adds the kendo theme files to the MyApp\Content\kendo\2024.2.514
  3. Open the classic-silver.css file added by the NuGet package and compare it to the file hosted on the CDN: https://kendo.cdn.telerik.com/themes/8.0.1/classic/classic-silver.css

Current behavior

There are multiple differences similar to the exemplary ones posted below:

Example 1:
CDN line 33994:

.k-menu-vertical > .k-menu-item > .k-menu-link > .k-menu-expand-arrow {
    margin-inline-start: var(--kendo-spacing-2, 0.5rem);
    margin-inline-end: calc(var(--kendo-spacing-2, 0.5rem)*2*-1 + -16px - var(--kendo-spacing-2, 0.5rem)/2*-1);
}

NuGet:

.k-menu-vertical > .k-menu-item > .k-menu-link > .k-menu-expand-arrow {
    margin-inline-start: var(--kendo-spacing-2, 0.5rem);
    margin-inline-end: calc( -1 * (calc( var(--kendo-spacing-2, 0.5rem) * 2 + 16px) - var(--kendo-spacing-2, 0.5rem)/2));
}

Note the difference in the margin-inline-end value.

Example 2:
CDN line 36510:

.k-progressbar-vertical .k-progress-status {
    -ms-writing-mode: tb-lr;
        writing-mode: vertical-lr;
}

NuGet:

.k-progressbar-vertical .k-progress-status {
    writing-mode: vertical-lr;
}

Expected/desired behavior

The theme files distributed through CDN and NuGet should be identical.

Environment

  • Kendo UI version: 2024.2.514
  • jQuery version: x.y
  • Browser: [all ]
In Development
Last Updated: 11 Jun 2024 11:51 by ADMIN
Scheduled for 2024 Q3 (Aug)

Bug report

Reproduction of the problem

  1. Initialize a Grid with the following Filter and ColumnMenu configuration:
@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns => {
        columns.Bound(p => p.OrderID).Filterable(false).Width(100);
        columns.Bound(p => p.ShipCity).Width(100);
        columns.Bound(p => p.ShipCity).Width(150);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Width(140);
    })
    .Sortable()
    .Filterable(f => f.Extra(true)
        .Messages(message => message.Equals("Равно"))
        .Messages(message => message.Filter("Приложи"))
        .Messages(message => message.Clear("Изчисти"))
        .Messages(message => message.Info("Покажи записи които:"))
        .Messages(message => message.And("и"))
        .Messages(message => message.Or("или"))
        .Messages(message => message.AdditionalOperator("fdfdfd"))
        .Messages(message => message.IsFalse("Активни  "))
        .Messages(message => message.IsTrue("Неактивни   "))
    )
    .ColumnMenu()
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Model(model => model.Id(p => p.OrderID))
        .Read(read => read.Action("Orders_Read", "Grid"))
     )
)

Or use this REPL example: https://netcorerepl.telerik.com/QSYflePv05yaqnLZ07

The issue is also reproducible with the ColumnMenu set the following way:

.ColumnMenu(cm => cm
        .Messages(message => message.Columns("Колони"))
        .Messages(message => message.ColumnSettings("Насторйки"))
        .Messages(message => message.Filter("Филтър"))
        .Messages(message => message.SortAscending("Сортирай възходящ ред"))
        .Messages(message => message.SortDescending("Сортирай низходящ ред"))
    )

Current behavior

The filter menu messages are not set.

filter-menu-messages

Expected/desired behavior

The filter menu messages are set regardless of whether a ColumnMenu is enabled or not.

Environment

  • Kendo UI version: 2024.1.314
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 26 Apr 2024 15:05 by Jennifer
Created by: Jennifer
Comments: 0
Category: Grid
Type: Feature Request
1
Add support for drag & drop of multiple rows between Grids
Unplanned
Last Updated: 23 Apr 2024 17:52 by Amit Sighn

### Bug report

When the Grid uses an external DataSource, the aggregates are undefined within the ClientGroupFooterTemplate().

### Reproduction of the problem

Use the following REPL sample that demonstrates the issue:

https://netcorerepl.telerik.com/mIkyQnvB382bsiFt24

1. Group the Grid by the "Freight" column.

2. An error is thrown in the browser console: "Uncaught ReferenceError: sum is not defined".

3. The aggregates=["sum"] is missing in the column options in the Grid initialization script;

"columns":[{"title":"Order ID","field":"OrderID","filterable":false,"encoded":true},{"title":"Freight","groupFooterTemplate":"Sum: #=sum#","field":"Freight","filterable":{"messages":{"title":"Show items with value that"},"checkAll":false},"encoded":true},{"title":"Ship City","width":"150px","field":"ShipCity","filterable":{"messages":{"title":"Show items with value that"},"checkAll":false},"encoded":true}]

When the DataSource is defined within the Grid configuration, the aggregate is displayed as expected.

### Expected/desired behavior

The "sum" aggregate must be displayed within the group footer template of the column when the Grid is grouped.

### Workaround

Define the DataSource in the Grid configuration or update the Grid settings by using the setOptions() method when the page is loaded:

<script>
    $(document).ready(function () {
        var grid = $("#grid").data("kendoGrid");
        if (grid) {
            let gridColumns = grid.columns;
            if (!gridColumns[1].aggregates) { // update [1] with the index of the column that has a group footer template. For example, "1" is the 2nd Grid column
                gridColumns[1].aggregates = ["sum"];
                grid.setOptions({ columns: gridColumns });
            }
        }
    });
</script>

### Environment

* **Telerik UI for ASP.NET Core/MVC: 2024.1.319
* **Browser: [all]

Unplanned
Last Updated: 26 Mar 2024 09:16 by nidhin
Created by: nidhin
Comments: 0
Category: Grid
Type: Bug Report
1

Bug report

A hidden template column that is not included in the ColumnMenu appears after showing another column

Reproduction of the problem

  • Use the following declaration for the columns:
              .Columns(columns =>
              {
                  //Hidden template column
                  columns.Template(x =>
                  {
                      int rptIndex = Model.IndexOf(x);
                      string namePrefix = "Grid[" + rptIndex + "].";
                      Html.Hidden(namePrefix + "Id", x.Id, new { @readonly = "readonly" });
                      Html.Hidden(namePrefix + "Name", x.Name, new { @readonly = "readonly" });
                  }).Hidden().IncludeInMenu(false);

                  columns.Bound(x => x.Id).Width(120).Hidden(true);
                  columns.Bound(x => x.Name).Width(200);
                  columns.Bound(x => x.ReportingDateOriginal).Width(500).HtmlAttributes(new { id = "reporting-date-original" })
                    .Filterable(f => f.UI(GridFilterUIRole.DateTimePicker).Cell(c => c.Template("dateFilter")));
                  columns.Bound(x => x.Test1).Width(200).Hidden(true);
                  columns.Bound(x => x.TimezoneOffset).Width(200).HtmlAttributes(new { id = "reporting-date-offset" });
                  columns.Bound(x => x.Test2).Width(200).Hidden(true);
                  columns.Bound(x => x.ReportingDateAdjusted).Width(500).HtmlAttributes(new { id = "reporting-date-adjusted" })
                    .Filterable(f => f.UI(GridFilterUIRole.DateTimePicker).Cell(c => c.Template("dateFilter")));
                  columns.Bound(x => x.Test3).Width(200);
                  columns.Bound(x => x.Test4).Width(200).Hidden(true);
                  columns.Bound(x => x.Test5).Width(200);
              })
  • Show the Id column

Current behavior

The first time instead of the Id, the template column appears.

Expected/desired behavior

The Id column should appear and the template column should remain hidden.

Environment

  • Kendo UI version: 2024.1.130
  • Browser: [all]
Completed
Last Updated: 14 May 2024 13:19 by ADMIN
Release 2024 Q2 (May)

Bug report

Reproducible in MVC with a custom toolbar tool that has a ClientTemplate.

Reproduction of the problem

  1. Configure the Grid for incell editing and a custom command with a template to its toolbar configuration
@(Html.Kendo().Grid<TelerikMvcApp2.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity);
    })
    .ToolBar(toolbar =>
    {
        toolbar.Save();
        toolbar.Spacer();
        toolbar.Custom().ClientTemplate("<span>test</span>");
    })
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .Editable(editable => editable.Mode(GridEditMode.InCell))
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Model(model => model.Id(p => p.OrderID))
        .Read(read => read.Action("Orders_Read", "Grid"))
        .Create("Orders_Create", "Grid")
        .Update("Orders_Update", "Grid")
    )
)

Current behavior

Duplication of the "Cancel" button.

Expected/desired behavior

A single "Cancel" button is rendered in the toolbar.

Environment

  • Kendo UI version: 2024.1.130
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 06 Feb 2024 16:12 by Garry

Bug report

The rendering (structure and order of elements) of the th element of a column, for which a HeaderTemplate is set, does not match the Kendo UI Grid's rendering in a similar scenario. Prerequisites: HeaderTemplate, Sortable, Filterable enabled. For more context, see Ticket ID: 1639834.

Reproduction of the problem

Check the rendering of the header of the second column:

@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("grid2")
    .Columns(columns => {
        columns.Bound(p => p.OrderID).Filterable(false).Width(100);
        columns.Bound(p => p.Freight).HeaderTemplate("<span class='k-link'>My Template</span>");
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Width(140);
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).Width(150);
    })
    .Sortable()
    .Filterable()
    .Pageable()
    .Scrollable()
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Grid"))
     )
)

Current behavior

The content of the th is the following:

<a aria-hidden="true" class="k-grid-filter-menu k-grid-header-menu">
    ...
</a>
<span class="k-link">
    ...
</span>

Expected/desired behavior

The th content should be rendered as follows:

<span class='k-cell-inner'>
    <span class='k-link'>
        ...
    </span>
    <a aria-hidden='true' class='k-grid-filter-menu k-grid-header-menu'>
        ...
    </a>
</span>

It should match the Kendo UI Grid's rendering: https://dojo.telerik.com/oTalIGir/8

Environment

  • Kendo UI version: 2024.1.130
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 09 Jan 2024 11:49 by Simon

Bug report

The Grid cell does not enter edit mode on double tap on iOS in Chrome and Edge. Works correctly in Safari.

Reproduction of the problem

  1. Run this dojo example on iOS in Chrome or Edge: https://dojo.telerik.com/idOVAZiP/3
  2. Double tap a cell to edit its value

Current behavior

The cell does not enter edit mode.

Expected/desired behavior

The cell enters edit mode.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [iOS Chrome, iOS Edge]
Completed
Last Updated: 12 Jan 2024 15:40 by ADMIN
Release 2024 Q1

Bug report

Regression introduced in R3 2023 SP1
If an initially hidden column is shown with the showColumn API method, the column header remains hidden because of the k-hidden class that remains in the th element.

Reproduction of the problem

  1. Click on the button above the Grid in the example below
<input type="button" name="btn1" value="Show the hidden columns" onclick="btn1Click()" />
<br />
<br />

@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).Hidden(true);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Hidden(true);
    })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Grid"))
    )
)

<script>
    function btn1Click() {
        var grid = $("#Grid").data("kendoGrid");

        grid.showColumn("ShipCity");
        grid.showColumn("OrderDate");
    }
</script>

Current behavior

The hidden columns are shown but their headers remain hidden.

As a workaround, the k-hidden class can be removed from the column header, after showing the column:

grid.showColumn("ShipCity");
$(".k-grid .k-header[data-field='ShipCity']").removeClass("k-hidden");

Expected/desired behavior

The columns and their headers are shown.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [all ]
Completed
Last Updated: 15 Jan 2024 08:47 by ADMIN
Release 2024 Q1

Bug report

The ClientGroupFooterTemplate and ClientFooterTemplate configuration lead to an invalid template error when strict CSP mode is enabled. There are no corresponding methods that accept a TemplateHandler.

Reproduction of the problem

@(Html.Kendo().Grid<TelerikMvcApp3.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).ClientGroupFooterTemplate("Total:").ClientFooterTemplate("Team Total");
    })
    .Groupable()
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Home"))
    )
)


@(Html.Kendo().DeferredScriptFile())

Current behavior

JS exceptions on initializing the Grid and on attempting to group it by ShipCity.

Expected/desired behavior

CSP compatible templates.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [all]
Completed
Last Updated: 04 Jun 2024 06:04 by ADMIN
Release 2024 Q1

Bug report

Reproduction of the problem

  1. Compare the rendering of the "Next Page", "Last Page", "Previous Page" and "First Page" buttons in RTL between the MVC Grid and the jQuery and Core Grids:

https://demos.telerik.com/aspnet-mvc/grid/right-to-left-support
https://demos.telerik.com/kendo-ui/grid/right-to-left-support
https://demos.telerik.com/aspnet-core/grid/right-to-left-support

Current behavior

Incorrect rendering of the buttons.

Expected/desired behavior

Buttons rendered consistently with the jQuery and Core Grids.

Environment

  • Kendo UI version: 2023.3.1010
  • jQuery version: x.y
  • Browser: [all]
Completed
Last Updated: 05 Feb 2024 12:19 by ADMIN
Release R1.2024-Increment.1(15.Nov.2023)

Bug report

Prerequisites: reordering a non-locked column before a locked column. There could be one or more locked columns.
This behavior appeared in v2021.3.1207.

Reproduction of the problem

Dojo example: https://dojo.telerik.com/UhExAXIv/5

  1. Click, hold and slowly drag the header of the OrderDate column over the locked ID column.
  2. Attempt to reorder the OrderDate column before the ID column.

Current behavior

The reorder hint appears only when you hover the left border of the ID cell. This makes dropping the header at the right spot difficult, since you have to be very precise and if you are too fast, you have to re-adjust the mouse cursor position right on top of the left border of the cell.

Expected/desired behavior

The reorder hint should appear when mouse cursor enters the boundaries of the target cell. For example, slowly drag ShipCity before ShipCountry. Note how the reorder hint appears once you enter the boundaries of the ShipCountry cell and you don't have to drag all the way to ShipCountry's left border.

Environment

  • Kendo UI version: 2023.2.829
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 15 Sep 2023 13:33 by Jonathan
Created by: Jonathan
Comments: 0
Category: Grid
Type: Feature Request
1
In a parent/detail Grid scenario, on expanding a parent row, if the detail row has larger content that needs to be scrolled vertically, it would be helpful to have the option to make the expanded parent row sticky. This way the row won't go out of view and the user would be able to collapse the row without having to scroll up. Sticking the row could potentially be limited to work only with the last expanded row, to avoid having more than one sticky parent rows at the same time.
Completed
Last Updated: 19 Oct 2023 13:38 by ADMIN
Release R1.2024-Increment.1(15.Nov.2023)
Created by: FranckSix
Comments: 0
Category: Grid
Type: Bug Report
1

Bug report

Reproduction of the problem

Have a Grid bound to local data (see below code snippets and screenshot)

@model Pager_issue.Models.GridViewModel

@(Html.Kendo().Grid(Model.Items)
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity);
    })
    .Pageable(p => p.PageSizes(new[] { "5", "10", "50", "all" }).PreviousNext(false))
    .Sortable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .Batch(true)
        .ServerOperation(false)
    )
)
    public class HomeController : Controller
    {
        [HttpGet]
        public ActionResult Index()
        {
            var model = new GridViewModel
            {
                Items = Enumerable.Range(0, 200).Select(i => new OrderViewModel
                {
                    OrderID = i,
                    Freight = i * 10,
                    OrderDate = DateTime.Now.AddDays(i),
                    ShipName = "ShipName " + i,
                    ShipCity = "ShipCity " + i
                })
            };

            return View(model);
        }

no pager

Current behavior

When filling the Grid with data via a ViewModel, the pager doesn't show on load

Expected/desired behavior

The pager should be visible on load

Environment

  • Kendo UI version: 2023.2.829
  • Browser: [all]
Unplanned
Last Updated: 14 Aug 2023 08:05 by ADMIN
Created by: Andy
Comments: 5
Category: Grid
Type: Feature Request
1

Hello telerik support,

recently we updated to 2023.2.718

somehow the grid column menu is not completely in german language 

How can I apply german language to the complete column menu?

Best regards

Andy

 

Unplanned
Last Updated: 09 Aug 2023 18:44 by TESI
Created by: TESI
Comments: 0
Category: Grid
Type: Feature Request
1
Hi Team,

Please could you update this example in your GitHub regarding how to export the Kendo UI Grid data on the server as ITextSharp is deprecated?

Thank you!
Unplanned
Last Updated: 21 Jul 2023 07:37 by Matthew
Created by: Matthew
Comments: 0
Category: Grid
Type: Feature Request
1
Add an equivalent of the WPF RadDataBar control in UI for ASP.NET MVC.
Unplanned
Last Updated: 19 Jul 2023 12:36 by Novak
Created by: Novak
Comments: 0
Category: Grid
Type: Feature Request
1

Add a class to cells in a sorted column (similarly to the .k-sorted class in a sorted column's <th> element) to distinguish them from cells in unsorted columns.

Completed
Last Updated: 24 Oct 2023 13:46 by ADMIN
Release R1.2024-Increment.1(15.Nov.2023)
Created by: Michael
Comments: 0
Category: Grid
Type: Bug Report
3

Bug report

When a UI for ASP.NET MVC Grid contains a PDF or Excel button within the Toolbar, the IconClass is being ignored.

Reproduction of the problem

.ToolBar(t => t.Excel().Text("Export to Excel").IconClass("icon here"))

Current behavior

image

Expected/desired behavior

The specific icon should be added based on the IconClass.

Environment

  • Kendo UI version: 2023.2.606
  • jQuery version: All Supported Versions
  • Browser: All
1 2 3 4 5 6