Unplanned
Last Updated: 14 May 2020 06:51 by ADMIN

I downloaded the latest version of Kendo UI (Version: 2020.1.406) for MVC and upgraded my project to refer the latest JS, CSS and Kendo.MVC (2020.1.406.545).

NoRecords method is behaving differently in the latest version. While fetching records in progress, it displays the 'No record found' message even before completion of the action method. Please see the below image:

It was not happening in the version 2018.2.516, it was showing the 'No record found' message after completion of the action method and only if there is 0 row returned.

Below is the code of Student.cshtml view:

<h4>Student</h4>
<div class="responstable grid-wrapper custom-dropdown">
    @(Html.Kendo().Grid<Kendo2020Demo.Models.Student>()
    .Name("StudentGrid")
    .Columns(columns =>
    {
        columns.Bound(p => p.Id);
        columns.Bound(p => p.Name);
        columns.Bound(p => p.Address);

    })
              .HtmlAttributes(new { style = " min-height: 100px;" })
              .NoRecords("No record found.")
              .Scrollable()
              .Filterable()
              .Sortable()
              .ColumnMenu()
              .DataSource
                (
                  dataSource => dataSource
                  .Ajax()                               
                  .Read(read => read.Action("GetData", "Home"))
                )
              .Resizable(resize => resize.Columns(true))
              .Reorderable(reorder => reorder.Columns(true))
 )

</div>
Unplanned
Last Updated: 26 Feb 2020 14:40 by ADMIN
Created by: Bryan Patrick
Comments: 1
Category: Grid
Type: Bug Report
1

 

I've been using the "Change" event to handle a Single Row Selection grid as that seems to be the event to use to determine when the user selects a row.

 

I just tried adding "persistSelection(true)" to my grid but it seems to be triggering a change event when I switch to another page and back to the previous page, or do an external $(this).data('kendoGrid').dataSource.read() on the grid.

 

How can I only get a change event when the USER selects a row, not the persistedSelection selecting the row?

 

Or at least detetect where it came from it in my Change event?

 

Thanks,

 

Bryan

Unplanned
Last Updated: 11 Feb 2020 12:01 by ADMIN
Scheduled for 2020.R1.SP.next

Hi, with the latest version of kendo ui on existing hundred grids when I try to filter for a column I get an error like:

This kind of grid worked perfect on previous versions.

Uncaught TypeError: Cannot read property 'length' of undefined

    at init._eachRenderedMenuItem (kendo.all.js:52792)
    at init._setMenuItemsVisibility (kendo.all.js:52747)
    at init._updateMenuItems (kendo.all.js:52742)
    at init.open (kendo.all.js:52609)
    at init.trigger (kendo.all.js:164)
    at init._triggerEvent (kendo.all.js:51935)
    at kendo.all.js:51154
_eachRenderedMenuItem @ kendo.all.js:52792
_setMenuItemsVisibility @ kendo.all.js:52747
_updateMenuItems @ kendo.all.js:52742
open @ kendo.all.js:52609
trigger @ kendo.all.js:164
_triggerEvent @ kendo.all.js:51935
(anonymous) @ kendo.all.js:51154
setTimeout (async)
(anonymous) @ kendo.all.js:51143
each @ jquery-3.4.1.min.js:2
each @ jquery-3.4.1.min.js:2
open @ kendo.all.js:51140
_mouseenter @ kendo.all.js:51465
i @ jquery-3.4.1.min.js:2
handle @ jquery-3.4.1.min.js:2
dispatch @ jquery-3.4.1.min.js:2
v.handle @ jquery-3.4.1.min.js:2

 

 

@(Html.Kendo().Grid<Contract>()
                  .Name(GridId)
                  .DataSource(dataSource => dataSource
                      .Ajax() // Specify that ajax binding is used
                      .PageSize(80)
                      .Events(events => events.Error("common.gridErrorHandler").RequestStart("waitWindow.show").RequestEnd("waitWindow.hide"))
                      .Model(model => model.Id(al => al.ContractId))
                      .Read(read => read.Action("ContractsRead", "Contracts"))
                  )
                  .Events(events => events.Change("onRowClick").DataBound("common.onDataBound"))
                  .ToolBar(toolbar =>
                  {
                      toolbar.Template(@<text>
                          <div style="display: inline-block;">Select a service to manage Cost per Office</div>
                    </text>);
                        })
                              .Columns(columns =>
                              {
                                  columns.Bound(p => p.ContractId).Width(45).Title("Reference #").Hidden(true);
                                  columns.Bound(p => p.Name).Title("Service").Width(100);
                                  columns.Bound(p => p.ExpirationDate).Width(60).Format(RequestHelper.GetDateTimeFormat(Request));
                                  columns.Bound(p => p.BillingCycle.Name).Width(53);
                                  columns.Bound(p => p.Value).Title("Amount").Width(75).Format("$ {0:n5}").HeaderHtmlAttributes(new { style = "text-align: right;" }).HtmlAttributes(new { style = "text-align: right;font-weight: bold;" });
                              })
                              .NoRecords(PageResources.lblGridNoRecords)
                              .Filterable()
                              .Selectable(s => s.Mode(GridSelectionMode.Single))
                              .Scrollable(s => s.Virtual(true).Height("100%"))
                              .Sortable() // Enable sorting
                              .Resizable(resize => resize.Columns(false))
                              .ColumnMenu(p => p.Columns(false)))

 

 

Thank you,

Ion Petcu

Unplanned
Last Updated: 29 Jan 2020 10:55 by Mohammed

Bug Report

When endless scrolling is implemented, manual DataSource operations using the DataSource APIs(query, page, sort, etc.) do not work as expected.  The endless scrolling settings are causing paging issues.  

Reproduction of the problem

  1. Visit this Kendo UI Dojo.
  2. Scroll to 40.
  3. Click the Reset Filter button.

Current Behavior

The first page is only accessible, and when scrolling down the reads continue to occur.

Expected/desired behavior

The endless scrolling settings should not interfere with manual dataSource operations.

Workarounds

  1. Solution when read is called, the Kendo UI Grid will reset to its original state(dojo). 
        kendo.ui.Pager.fn._refreshClick = function (e) {
            e.preventDefault();
            var grid = $("#grid").getKendoGrid();
            grid.dataSource.options.endless = null;
          	grid._endlessPageSize = 20;
          	grid.dataSource.pageSize(20);
        }
  2. Solution which overrides the data(dojo).
        kendo.ui.Pager.fn._refreshClick = function (e) {
            e.preventDefault();
            var grid = $("#grid").getKendoGrid();
            window.restoreScroll = true;
            window.scolledValue = grid.content[0].scrollTop;
            grid.dataSource._data.empty();
            grid.dataSource._pristineData = [];
            grid.dataSource.read();
        }

Environment

  • Kendo UI version: 2020.1.114
Unplanned
Last Updated: 14 Feb 2020 09:48 by ADMIN
Scheduled for 2020.R1.SP.next

Bug report

Using server binding does not render the NoRecords message for the Grid

Reproduction of the problem

	@(Html.Kendo().Grid(new List<Product>())    
		.Name("Grid")
		.Columns(columns => {
			columns.Bound(p => p.ProductID).Groupable(false);
			columns.Bound(p => p.ProductName);
			columns.Bound(p => p.UnitPrice);
			columns.Bound(p => p.UnitsInStock);
		})
		.NoRecords("No records found.")
		
		.Pageable()
		.Sortable()
		.Scrollable() 
		.DataSource(d=>d.Server())
		.Filterable()
		.Groupable()
	)

Workarond

A possible workaround is to use local binding by setting the AJAX binding in the DataSource, but keep the initial server binding:

	@(Html.Kendo().Grid(new List<Product>())    
		.Name("Grid")
		.Columns(columns => {
			columns.Bound(p => p.ProductID).Groupable(false);
			columns.Bound(p => p.ProductName);
			columns.Bound(p => p.UnitPrice);
			columns.Bound(p => p.UnitsInStock);
		})
		.NoRecords("No records found.")
		
		.Pageable()
		.Sortable()
		.Scrollable() 
		.DataSource(d=>d.Ajax().ServerOperation(false))
		.Filterable()
		.Groupable()
	)

Environment

  • Kendo UI version: 2017.3.1026
Unplanned
Last Updated: 16 Dec 2019 09:16 by ADMIN

We are using the Kendo UI for different components like Grid in our APS.Net MVC application. Currently we are experiencing an issue while exporting the Kendo grid to Excel from mobile (both android and ios). It shows the following warning message. The same works when exporting from a PC without any issue. Could you please help to resolve the issue.