The ListBox toolbar buttons are not visible if you set toolbar position to "bottom"
Regression with v2023.1.314
Open this Dojo example - https://dojo.telerik.com/iXerajOno/11
The toolbar buttons are not visible
The toolbar buttons should be visible on the bottom
When the user click on the buttons in the ListBox the focus is alwasy moved to the first button.
The first button ('up arrow') is getting focused.
The clicked button should remain focused.
When moving all the items from the right ListBox to the left, an error is thrown on the console.
Regression with 2022.3.1109
Workaround:
kendo.ui.ListBox.ToolBar.fn._focusTool = function() {
if(this.element) {
this.element.find(".k-button").not("[tabindex=-1]").trigger("focus");
}
};
An error is thrown.
No errors should be thrown.
How ironic that other controls have capability on grouping while the listbox is the solely exception. Hope you can include this on the next build.
When ListBox contains a long string it does not display a scroller.
There is no scroller, thus the user can not see the entire text. Also, the listbox is shifted a little bit to the left.
There should be a scroller and the entire ListBox should be visible.
<style> .k-list-content{ overflow: auto; } .k-listbox .k-list-scroller { min-width: 0; } .k-selected{ width: fit-content; } </style>
Hi Team,
I would like to request inline and incell editing functionality for the Kendo UI ListBox.
Thank you!
The new ListBox component already has the option to set a template for its items in kendo.ui.ListBoxOptions. Unintuitively the angular hooks for compile and cleanup for not fired when using that template. Note that these hooks are not only used by classic AngularJS but also by other frameworks. Please complete the component to fully support item templates like ListView, Grid, TreeView and others do.
Currently you can set draggable to true, however, when you want to drag the item to the top or bottom there is no auto scroll. This is not efficient because you need to constantly drop the item in order to move it where you want it. Please add autoScroll option similar to what you have on the kendoDraggable (https://docs.telerik.com/kendo-ui/api/javascript/ui/draggable/configuration/autoscroll) for each list item.
Thank you.
Currently, the Kendo ListBox has methods to return -- the DOM Elements using items(); the Selected DOM Elements using select(); ALL of the Data Items using .dataItems() and a SINGLE dataItem using dataItem(selector).
An additional method that would be extremely useful for this control, would be to return the SELECTED DATA ITEMS perhaps using a method selectedDataItems().
Here is a JavaScript function that can be used as a template for providing the functionality (of course, it needs additional error checking):
function getSelectedItems(lstName) {
var selectedItems = [];
//var lstItems = $(lstName).data("kendoListBox").items();
var lstItems = $(lstName).data("kendoListBox").select();
$(lstItems).each(function (index) {
var selected = $(this).hasClass("k-state-selected");
if (selected) {
var id = "#" + $(this).attr("id");
var dataItem = $(lstName).data("kendoListBox").dataItem(id);
selectedItems.push(dataItem);
}
});
return selectedItems;
}
In a control such as a ListBox that inherently requires the functionality of "selection" -- then your user community would definitely need a way to not only return the selected DOM elements but also return the selected dataItems.
Hopefully, we see this functionality added to the Kendo ListBox very soon.
There should be a flag to keep the ListBox items sorted.
One immediate need I have is to have the ability to add entries to the collection. I'd like to have an add button in the toolbar. I'd like to be able to add custom buttons natively.
ListBox should support the value MVVM binding, similar to the multiselect.
It would be very interesting to be able to use the CRUD operations of the DataSource associated with the ListBox, to reflect on the server the changes made to the ListBox widget. CRUD methods are not currently executed after making changes and calling the DataSource sync method.