Completed
Last Updated: 29 Jul 2025 12:38 by ADMIN

### Bug report

When the Grid is set up for OData-v4 binding, the columns that bind to DateOnly fields fail to filter. The date value in the filter expression contains the time portion and the following error is thrown:

"The binary operator GreaterThan is not defined for the types 'System.Nullable`1[System.DateOnly]' and 'System.Nullable`1[System.DateTimeOffset]'."

### Reproduction of the problem

1) Create a Grid that uses OData-v4 binding.

2) Bind a specified column to a DateOnly field.

3) Filter the column through the default column filter menu and open the browser DevTools to review the response of the request.

//Model
public DateOnly LastProdUpdate { get; set; }

//View
@(Html.Kendo().Grid<ProductViewModel>()
    .Name("grid")
     .Columns(columns =>
        {
            columns.Bound(p => p.LastProdUpdate).Format("{0:dd/MM/yyyy}");
        })
        ...
        .Filterable()
        .DataSource(dataSource => dataSource
        .Custom()
        .Type("odata-v4")
        .Transport(t =>
        {
            t.Read(read => read.Url("/odata/Products").Data("function() {return {'$expand': 'Employee'} }"));
        })
        .PageSize(10)
        .ServerPaging(true)
        .ServerFiltering(true)
        .ServerSorting(true)
     )
)

### Expected/desired behavior

The DateOnly fields must be filtered successfully as the DateTime fields.

### Environment

* **Kendo UI version: 2024.4.1112
* **Browser: [all]

Completed
Last Updated: 28 Jul 2025 10:07 by ADMIN
Release 2025 Q3 (Aug)
Created by: Alistair
Comments: 0
Category: Wizard
Type: Feature Request
3

Currently, the Content function for Steps in a Wizard only accepts a string value (see API here). 
This means that in order to add a partial view (bound to the current model and its properties), the most straightforward way I could find was to put the partial view (and any wrappers) in its own file and add an extension method "ToHtmlString()". For example:

@model MyModel

@(Html.Kendo().Wizard().Steps(step => {

step.Add().Content(Html.Partial("~/Path/To/View/Wrapper.cshtml", Model).ToHtmlString());

})

using Microsoft.AspNetCore.Html;
using System.IO;

public static class HtmlContentExtensions
{
    public static string ToHtmlString(this IHtmlContent htmlContent)
    {
        if (htmlContent is HtmlString htmlString)
        {
            return htmlString.Value;
        }

        using StringWriter writer = new();
        htmlContent.WriteTo(writer, System.Text.Encodings.Web.HtmlEncoder.Default);
        return writer.ToString();
    }
}
This is not ideal, as it requires the usage of Html.Partial (which displays a warning in the latest versions of .NET 8). It is also awkward as it sometimes means that new view files need to be created for the explicit purpose of being a "wrapper" even though they do not contain much content. And lastly, it also requires an extension method, so it's not immediately easy for other Telerik users to use.

In the Telerik TabStrip, a better approach is possible, as the Content for Items can take in a function which accepts Razor syntax (see API here). For instance:

@model MyModel @(Html.Kendo().TabStrip().Items(tabstrip => { tabstrip.Add()

.Content(@<div id="@Model.TabContainer" class="myTabWrapperClass">

@await Html.PartialAsync("~/Path/To/View.cshtml", Model)

</div>); })

In this case, we can use Html.PartialAsync (avoiding .NET 8 warnings), we don't need an extension method, and it is easy to add any required "wrapping" such as a div with an ID, without needing a whole separate view.

If we had the option to use the same approach with Wizard Steps, that would be ideal!

Completed
Last Updated: 28 Jul 2025 09:42 by ADMIN

Bug report

Filterable configuration in ForeignKey is not serialized in TagHelper Grid.

Reproduction of the problem

Open this REPL example

Current behavior

Filterable configuration in ForeignKey is not serialized in TagHelper Grid.

Expected/desired behavior

Filterable configuration in ForeignKey should be serialized in TagHelper Grid.

TicketID:

1692361

Environment

  • Kendo UI version: 2025.2.702
  • Browser: [all]
Declined
Last Updated: 25 Jul 2025 05:07 by ADMIN
Scheduled for 2024 Q3 (Aug)
Created by: Chongsiong
Comments: 1
Category: FileManager
Type: Feature Request
2

Is it possible to implement an option that enables the paging of the Grid View?

For example:

@(Html.Kendo().FileManager()
    .Name("filemanager")
     .Views(gridView => gridView.Grid(grid => grid.Pageable()))
     ...
)

Declined
Last Updated: 25 Jul 2025 05:03 by ADMIN
Scheduled for 2025 Q2 (May)

### Bug report

When loading an editor through a partial View using EditorTemplateView(await Html.PartialAsync("PartialViewName")), the following error occurs:

The 'await' operator can only be used within an async lambda expression. Consider marking this lambda expression with the 'async' modifier.

### Reproduction of the problem

@(Html.Kendo().Form<UserViewModel>()
     .Name("myForm")
     .Items(items =>
     {
         items.Add().Field(f => f.Username).EditorTemplateView(await Html.PartialAsync("PartialViewName"));
      })
)

### Expected/desired behavior

The EditorTemplateView() must accept Html.PartialAsync("PartialViewName").

### Environment

* **Telerik UI for ASP.NET Core version: 2024.4.1112
* **Browser: [all]

Completed
Last Updated: 23 Jul 2025 11:36 by ADMIN
Created by: Dan
Comments: 0
Category: Pager
Type: Feature Request
1
The Pager breaking points are hard coded, as stated in the documentation. Is it possible to provide an option to modify these three points (360px, 480px, and 600px)?
Unplanned
Last Updated: 17 Jul 2025 09:01 by Luan

### Bug report

When setting autoWidth: true and expanding a node, the popup's width is not adjusted based on the displayed child nodes.

### Reproduction of the problem

1) Enable the autoWidth option and open the DropDownTree.

2) Expand an item. A horizontal scrollbar appears and the width of the popup is not adjusted as expected:

A Dojo sample for reproduction: https://dojo.telerik.com/faeuFFwb/2

### Expected/desired behavior

The width of the popup must be automatically adjusted when expanding an option and the "autoWidth" option is enabled.

### Environment

* **Kendo UI version: 2025.2.702
* **jQuery version: 3.7.1
* **Browser: [all]

Completed
Last Updated: 17 Jul 2025 07:16 by ADMIN
Release 2025 Q3 (Aug)

### Bug report

When dragging and dropping a file into a specified FileManager folder, the Upload request triggers twice.

### Reproduction of the problem

1. Open the FileManager Demo: https://demos.telerik.com/kendo-ui/filemanager/index

2. Open the browser's Network tab.

3. Drag and drop a file into the FileManager.

4. Two Upload requests are triggered one after another.


### Expected/desired behavior

When uploading a single file with drag & drop, a single Upload request must trigger. When using the default upload button to upload a file, a single request triggers as expected.

### Environment

* **Kendo UI version: 2024.4.1112
* **jQuery version: 3.7.1
* **Browser: [all]

Completed
Last Updated: 16 Jul 2025 12:27 by ADMIN
Release 2025 Q3 (Aug)

### Bug report

When defining custom editors in the OrgChart form by using EditorTemplateView() or EditorTemplateId() options, the editors are not initialized as expected.

### Reproduction of the problem

1) Define a DropDownList editor in a partial View and load it through the EditorTemplateView() option:

@(Html.Kendo().OrgChart<OrgChartEmployeeViewModel>()
                .Name("departmentsChart")
                .Editable(edit =>
                {
                    edit.Form(form => form
                      .Items(i =>
                      {
                         i.Add().Field(x => x.ParentDepartment).EditorTemplateView(Html.Partial("~/Views/Shared/EditorTemplates/ParentDepartmentDropDown.cshtml"));
                      }));
                })
                ...
)

// ~/Views/Shared/EditorTemplates/ParentDepartmentDropDown.cshtml
@model OrgChartEmployeeViewModel

@(Html.Kendo().DropDownListFor(m => m.ParentDepartment)
    .OptionLabel("-None-")
    .DataTextField("Text")
    .DataValueField("Value")
    .DataSource(source =>
    {
	    source.Read(read => read.Action("ReadDepartments", "Home"));
    })
)

2) The DropDownList is not initialized when opening the OrgChart form.

### Expected/desired behavior

The editors defined through the EditorTemplateView() or EditorTemplateId() options must be initialized correctly.

### Environment

* **Kendo UI version: 2025.2.520
* **jQuery version: 3.7.1
* **Browser: [all]

Completed
Last Updated: 09 Jul 2025 08:52 by ADMIN
Release 2025 Q3 (Aug)

Bug report

TimeDurationPickerFor does not work in EditorTemplates scenarios.

Reproduction of the problem

  1. Create a TimeDurationPickerFor Helper within a standalone view within the ~/Views/EditorTemplate/ folder.
@model double

@(Html.Kendo().NumericTextBoxFor<double>(m => m))
  1. Use the Editor template within a more compound component. E.g the Grid
        .Columns(columns =>
        {
            columns.Bound(m => m.Duration).EditorTemplateName("TimeDurationPicker");
            columns.Command(command => command.Edit());
        })
  1. Notice that the application produces a server error.

Current behavior

The TimeDurationPickerFor Helper does not work in EditorTemplates scenarios.

Expected/desired behavior

The TimeDurationPickerFor Helper should work in EditorTemplates scenarios.

Environment

  • **Kendo UI version: 2025.2.702
  • **Browser: [all]
Unplanned
Last Updated: 07 Jul 2025 14:04 by Dan

The FileManager triggers two Read requests when double clicking a folder in the ListView/GridView. The behavior can be observed in the Basic Usage Demo.

When navigationg to a folder in the TreeView using a single click, the component triggers a single Read request.

Could you consider optimizing the request handling when navigating to nested folders, particularly in ListView/GridView, to reduce redundant Read calls and improve performance?

Completed
Last Updated: 07 Jul 2025 07:05 by ADMIN
Release 2025 Q3 (Aug)

Hi,

I'm following this document to load data into the grid view control using local data binding.

https://demos.telerik.com/aspnet-core/grid/local-data-binding 

I'm not sure this is an issue or expected grid view behavior when using local data binding. If loader-type and no-records are added. What happens is when there are no records, the Skeleton is still displayed and the no-records template is not displayed (see the attached image)


<kendo-grid mobile="Disabled" name="Grid" loader-type="GridLoaderType.Skeleton">
 <columns>
 <column field="ProductName" title="Product Name">
 </column>
 <column field="UnitPrice" format="{0:C}" title="Unit Price" width="130">
 </column>
 <column field="UnitsInStock" title="Units In Stock" width="130">
 </column>
 <column field="Discontinued" title="Discontinued" width="130">
 </column>
 </columns>
 <datasource type="DataSourceTagHelperType.Ajax" page-size="20" server-operation="false" data="@Model">
 </datasource>
 <filterable enabled="true">
 </filterable>
 <scrollable enabled="true" />
 <pageable enabled="true">
 </pageable>
 <sortable enabled="true" />
<no-records template="string HTML template, automatically centered" />
</kendo-grid>

 

Thanks

Bob

Unplanned
Last Updated: 04 Jul 2025 09:54 by Mathew
Created by: Mathew
Comments: 0
Category: Grid
Type: Feature Request
1

Currenty, when the Grid is in InCell edit mode, if a column binds to a boolean field, it is required a custom logic to display the field as a checkbox, which is always in edit mode and can be updated through a single click. Here is a REPL sample that shows the example:

https://netcorerepl.telerik.com/GJOhEIkj47P2xHf709

My opinion is that this functionality should work correctly out of the box without additional coding. If this is not available, then there should be an applicable sample code.

Is it possible to make an example where EF, Dirty works, no double click required and the checkbox always looks like a checkbox?

Completed
Last Updated: 03 Jul 2025 15:26 by ADMIN
Release 2025 Q3 (Aug)

As stated in the title, the Save() action of a grid (with pagination, not endless scroll) does set the scroll position to the top instead of persisting it. 

I tried to follow instructions from https://www.telerik.com/aspnet-core-ui/documentation/html-helpers/data-management/grid/scrolling/overview#restoring-the-scroll-position but without success. The scroll position is moved to the top after the DataBound event handler.

Unplanned
Last Updated: 03 Jul 2025 06:35 by SturmA
The TimeDurationPicker component should follow the same localization logic as other Kendo components like TimePicker, especially since it uses the same concepts: hours and minutes.
Unplanned
Last Updated: 02 Jul 2025 12:40 by Peter Huisman

Starting with version 2025.2.520, the toolbar tools like "Save changes" and "Cancel changes" are hidden by default. When the ShowInactiveTools(true) option is set, the inactive tools are displayed as disabled until a change in the Grid's data is made (for example, the tools are active when the edited cell is closed).

Is it possible to create an option that enables the previous behavior of the inactive toolbar tools - to keep the tools always active and visible no matter if there is a change or not?

For example:

.ToolBar(toolbar =>toolbar
            .Items(itm =>
            {
                itm.Create();
                itm.Save();
            })
            .EnableInactiveTools(true)
)

Unplanned
Last Updated: 01 Jul 2025 17:20 by Walter
Created by: Walter
Comments: 0
Category: TreeView
Type: Feature Request
1

Hello, 

I have a treeview that is getting the first items which are locations, then it loads divisions as its children. I want to have the treeview load a top item called "Locations" that is static. It will need to be expanded and load all the locations under it. Then when I click on a location it loads the divisions. The locations and divisions will be populated by a call to the controller and action. I have yet figured out how to do this and is it even possible? Here is the code I have right now. You will see for now that I am loading a div with the location icon and "Locations" as the text, but I would like this to be the top root level of the treeview.

 

Unplanned
Last Updated: 01 Jul 2025 09:08 by Neal

### Bug report

When using the default column checkbox filter menu and the data requested from the server takes time to load, the filter menu popup does not resize correctly when opening the menu for the first time.

The issue started to occur in version 2025.1.211.

### Reproduction of the problem

1) Enable the checkbox filter menu of a specified column. The Grid binds to remote data and the data operations are perfomed on the server.

2) Open the filter menu when the Grid is loaded.

3) The Read request triggers and a loader is displayed to indicate that the data is loading:

4) The options are loaded, but the popup container does not expand as expected:

5) Close the filter menu and opend it again:

### Expected/desired behavior

The filter menu popup must display all options when the data is loaded.

### Workaround

<style>
     .k-animation-container-shown {
        overflow: visible !important;
    }
</style>


### Environment

* **Kendo UI version: 2025.2.520
* **jQuery version: 3.7.1
* **Browser: [all]

Completed
Last Updated: 01 Jul 2025 06:05 by ADMIN
Release 2025 Q3 (Aug)

The Kendo UI for jQuery TreeList provides options for configuring the settings of the Window when using Popup editing mode:

https://www.telerik.com/kendo-jquery-ui/documentation/api/javascript/ui/treelist/configuration/editable#editablewindow

Currently, the Window options are not available for the HtmlHelper and TagHelper TreeList. Is it possible to implement the Window() configuration of the Editable() option, as per the example below?

        .Editable(e =>
        {
            e.Mode("popup");
            e.Window(w => w.AppendTo("..").Animation(false).Draggable(false).Title("..."));
        })

Unplanned
Last Updated: 30 Jun 2025 07:01 by Aleksandar

Bug report

The rowReorder event does not return the correct newIndex when dragging a row from a lower row index to a higher row index.

Reproduction of the problem

  1. Run this dojo https://dojo.telerik.com/omyPpaZb
  2. Drag Chai and drop after Chang. Note oldIndex is 0, newIndex is 2, which is unexpected as indices are 0-based

Image

  1. Re-run the dojo to start fresh and drag Chang and drop before Chai and the indices are correct - oldIndex: 1, newIndex: 0

Image

Current behavior

The returned newIndex is incorrect.

Expected/desired behavior

The returned newIndex should be correct.

Environment

  • Kendo UI version: 2025.2.520
  • Browser: [all]
1 2 3 4 5 6