The project listed under the demo has so many holes in it that there is no way anyone has had success trying to copy it.
This is the example I'm trying to get working. I want this to work with Cell Editing and Drag and Drop. Do you have a working code set?
https://demos.telerik.com/aspnet-core/treelist/editing-incell
My TreeList is generally working. However, when a user selects a Custom Command Button, I need to populate the Model with that Group.Id key value. How is this accomplished? As shown, the "function goDetail(e)" code works. However, if I remove the comment the last 2 lines the TreeList doesn't build... of course, I don't get any feedback as to what is wrong. That would be nice. But, this is where I'm trying to pull the dataItem.Id into the Model. How can I get this to happen? Thanks.
<script id="icon-template" type="text/x-kendo-template"> <div class='group-icon' style='background-image: url(@Url.Content("#: ImageUrl #"));'></div> <div class='group-name'>#: Name #</div></script>@(Html.Kendo().TreeList<Group>() .Name("treelist") .Columns(columns => { columns.Add().Command(c => { c.Custom().Text("Select") .Name("selectButton").ClassName("selectButton") .Click("goDetail"); }) .Width(Glossary.Portal.ButtonWidth); columns.Add().Field(e => e.Name).TemplateId("icon-template").Width(350); }) .DataSource(dataSource => dataSource .Read(read => read.Action("IndexJson", "Groups").Data("getData")) .ServerOperation(false) .Model(m => { m.Id(f => f.Id); m.ParentId(f => f.ParentId); m.Expanded(true); m.Field(f => f.Name); }).Events(events => events.Error("onError")) ) .Events(evt => evt.DataBound("treeListBound")))<script type="text/javascript"> function getData() { return @Html.Raw(Model.GetIndexData()); } function goDetail(e) { e.preventDefault(); alert("goDetail: " + e.toString()); var dataItem = this.dataItem($(e.currentTarget).closest("tr")); alert("goDetail: " + dataItem.id); @*@Model.Item.GroupId = dataItem.id; alert("goDetail: " + @Model.Item.GroupId);*@ } function treeListBound(e) { var treeList = e.sender; var items = treeList.items(); for (i = 0; i < items.length; i++) { var dataItem = treeList.dataItem(items[i]);.....
If I have a column filter configured like this:-
c.Bound(p => p.CreatedDateTime)
.Title("Created")
.Filterable(f => f
.Operators(o => o.ForDate(d => d.Clear().IsGreaterThanOrEqualTo("On or after").IsLessThan("Before")))
.UI(GridFilterUIRole.DateTimePicker)
)
It shows a dropdown for "And" and "Or" between the two filter options. In my case, this doesn't make sense.
Is there a way to specify the options or remove the dropdown?
Hello,
I have a grid with an ajax data source and ServerOperation set to true. The data source has roughly about 1.5 million entries and I want to display them with virtual scrolling enabled so that only the relevant portion of the data is loaded into the DOM.
Now the problem is that only about half of the available data is shown in the grid when scrolled to the end. See picture "missing_data.png" for clarification.
I tried to troubeshoot the issue myself and came up with this KB article: Virtual Scrolling - Setting the scrollbar, but I cannot get all elements to show with either hint. Apparently a height of 36px is the minimum for a grid row and with that value not all rows are shown. Disabling word-wrap has no effect. I noticed the maximum amount of entries displayed when scrolled to the end changes with different themes and changes sometimes when I scroll to the bottom repeatedly.
Now my question is how can I reliably show all rows and keep virtual scrolling? Currently my grid looks like this:
@(Html.Kendo().Grid<LogEntry>() .Name("grid") .Columns(columns => { columns.Bound(c => c.EventDateTime) .Title("Date").Width(100) .Format("{0: dd.MM.yyyy HH:mm:ss}"); //.Filterable(config => config // .UI("DateTimeFilter") // .Cell(cell => cell // .Template("DateTimeFilterRow"))); columns.Bound(c => c.EventLevel).Title("Level").Width(100); columns.Bound(c => c.MachineName).Title("Hostname").Width(150); columns.Bound(c => c.EventMessage).Title("Message").Width(600) .HtmlAttributes(new { @class = "nowrap" }); //columns.Bound(c => c.StackTrace).Hidden(); //columns.Bound(c => c.ErrorMessage).Hidden(); }) .ColumnMenu(config => config .Sortable(false) .Columns(true) .Enabled(true)) .Sortable() .Groupable() .Filterable(config => config .Extra(false) .Mode(GridFilterMode.Row) .Operators(config => config .ForDate(config => config .Clear() .IsGreaterThanOrEqualTo("Ist nach") .IsLessThanOrEqualTo("Ist vor") .IsEqualTo("Ist gleich")) .ForString(config => config .Clear() .IsEqualTo("Ist gleich") .IsNotEqualTo("Ist ungleich") .StartsWith("Beginnt mit") .EndsWith("Endet mit") .Contains("Enthält") .DoesNotContain("Enthält nicht") .IsNullOrEmpty("ist NULL")))) .Scrollable(config => config .Height("auto") //.Endless(true) .Virtual(true)) //.ClientDetailTemplateId("log-detail") .Resizable(config => config.Columns(true)) .Reorderable(config => config.Columns(true)) .Pageable(config => config .Refresh(true) .Numeric(true)) //.Events(events => events // .DetailExpand("onDetailExpand")) .DataSource(config => config .Ajax() .PageSize(200) .ServerOperation(true) .Read("Logs_Read", "Home") .Events(events => events .Error("error_handler")) ))
When binding to remote data:-
.DataSource(d => d
.Ajax()
.Read(r => r.Action("Index", "Books", new { id = Model.Id }))
If an error occurs when calling the controller method, there is no error message and the grid displays no results, so the user doesn't know what's going on.
I'm aware that I can catch errors in my controller method and do something with the DataSourceRequest, however, the particular case I'm experiencing is when a session has been idle and the authentication has timed out, calling the controller method wants to redirect me to the login page.
Usually this would be OK, however, as it's being called in the AJAX handler by the grid, it just fails silently.
How can I catch the error and display it, or ideally, catch the redirect and navigate to the login page?
Hey guys,
I have a simple telerik grid in my asp.net core app which basically consists of two columns:"Activity", "Share of total".
"Share of total" is the only (inCell) editable column and consists of percentage values between 0 and 100.
Now I have the following problem, which I haven't been able to solve yet:
If not in edit mode, the cells of the "Share of total" should display "0"-Values just normal. But when entering edit-mode, I want those zeros to not be displayed in the input-field. Instead it should just be empty, so that new values can easily be entered.
Especially in internet explorer, the cursor is positioned in front of the zero, which leads to entering for example 20 instead of 2, which is quite annoying for quick inputs.
Do you have a solution for that?
Best regards
I have GridView two column, 1 column is RadioButton and other is Checkbox,
I want based on RadioButton click in the same row checkbox should be checked or unchecked, in the following code if click radio button then all checkbox in the columns is checked.
<script type="text/javascript">
function Check_Radio(rb) {
var isChecked = rb.checked;
var row = rb.parentNode.parentNode;
if (isChecked) {
row.style.backgroundColor = '#B6C4DE';
row.style.color = 'black';
}
var currentRdbID = rb.id;
parent = document.getElementById("<%= GridView1.ClientID %>");
var items = parent.getElementsByTagName('input');
for (i = 0; i < items.length; i++) {
if (items[i].id != currentRdbID && items[i].type == "radio") {
if (items[i].checked) {
items[i].checked = false;
items[i].parentNode.parentNode.style.backgroundColor = 'white';
items[i].parentNode.parentNode.style.color = '#696969';
}
}
if (items[i].id != currentRdbID && items[i].type == "checkbox") {
items[i].checked = true;
}
}
}
</script>
How can be fix the problem..
Thanks

I'm doing Server Filtering on a combobox on selecting a school. School may have thousands of row. I have it working fine but when I go back into Edit mode I was to display the Template to the selected saved record. I have what should be displayed as well as the ID in the ViewModel. I tried Value and I tried do it in javascript but can't find a way.
@(Html.Kendo().ComboBox()
.Name("SchoolId")
.Placeholder("Select School")
.DataTextField("schoolName")
.DataValueField("schoolId")
.HtmlAttributes(new { @class = "form-control" })
.Filter(FilterType.Contains)
.AutoBind(false)
.MinLength(3)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetSchools", "User");
read.Type(HttpVerbs.Get);
})
.ServerFiltering(true);
})
.Template("#: data.schoolName # (#: data.schoolCity #, #: data.schoolState #)")
)

Hello Every one,
I am using Kendo ui grid in .net core. I have facing one issue in this grid to add comma in paging value. Please review my attached file and let know what is the better solution for adding comma in paging value? Please help me and share code
thanks