CellCloseEvent<T> should provide dataItem: T
Currently the CellCloseEvent dataItem is typed as any. This could be the default, but adding a generic type here would allow strong typing in the event handler.
Currently the Grid Filter menu logic is "and" and there is no built-in option for changing it even when using the configurable filter menu components in the Filter menu template.
It would be nice having an option to configure the default logic as well as to limit the list of options to only "And"/"Or" or prevent the end user from changing the programmatically set filtering logic.
As a workaround for setting the initial logic, the developer can use the logicChange method, e.g.:
https://www.telerik.com/forums/default-filter-menu-logic#4935605
Currently, the Selection feature behaves strangely with the Keyboard Support enabled, see [demo](https://plnkr.co/edit/hTOg7Flx5Fnm63jJ6CgX?p=preview):
* Enter, Ctrl+Enter and Shift+Enter select the rows, but do not function if the cell has focusable components
* Space works only on the checkbox column
* Ctrl+Space, Shift+Space do not work at all
Ideally, the Grid should support the following shortcuts when the Selection and KB Navigation are enabled:
* Select the current row on Space, regardless of the cell content
* Support Ctrl and Shift modifiers for Space
* Shift + Up/Down Arrow for adding/removing the next/last row to the selection.
Similar to the TreeList KB navigation:
https://www.telerik.com/kendo-angular-ui/components/treelist/keyboard-navigation/
Overcoming the last listed limitation would be nice:
https://www.telerik.com/kendo-angular-ui-develop/components/grid/columns/locked/#toc-known-limitations
The Spreadsheet (Google Docs, etc.) addresses this situation by duplicating the cell content on both sides and clipping the right cell accordingly.
Currently when I click the horizontal scrollbar button which is present at the left side or right side of the scroll bar then the columns are scrolled as a regular table.
It will be nice to move from one column to another column instead.
hello i`m always using kendo grid in my project but i can`t import excel to kendo grid please make it possible to import excel file and select specific sheet to kendo grid
Given: a kendo grid with resize enabled.
And: the input locked on kendo-grid-colum is undefined (by ex. due the component class property not initialized)
When: the user double click on the column resize handler
Actual: the column width is set to 0
Expected: the colum autofit behaviour remain consistent and set the column width as usual.
There is a bug with the kendoGridGroupBinding directive when changing the input data and using virtual scrolling. If you have many rows and scroll down to a lower virtual page and then change the input data to a small subset the grid will think there is no data. And if you then change back to the full data set you have to start scrolling down before the grid repaints with data.
Reproduction available here https://tyb2ys--run.stackblitz.io
Steps:
1. scroll down halfway in the grid
2. click the "Show subset" button. Note the grid shows the no records message but should show three rows
3. click the "Show all" button. Now the grid shows the scrollbar and the no records message is gone but it is not showing data. You have to scroll down past where you previously were with all data before it repaints the rows
One workaround is to have an ngIf on the grid to destroy and recreate the grid when the input data changes, something like this:
Hi Team,
We need to add caption on grid table as explained here: https://accessibility.psu.edu/tableshtml/#caption
JAWS should read this caption on pressing T while selecting the table.
Can you guide us how can we add this caption!
Thanks,
Saini
I have a Grid with a command column for edit/remove buttons.
I also have a custom button that has to be hidden while the row is being edited, but there is no variable that exposes that state.
Please provide isEdited field in the kendoGridCellTemplate context.
I had already made an entry in the Foum about it.
https://www.telerik.com/forums/is-there-a-way-for-percentage-column-widths
Link to the demo with the css workaround:
https://stackblitz.com/edit/angular-y8y55s
The main intention is that I want to be able to specify the column width in percentage values rather than fixed pixel values.
There are some edge cases that must be considered:
Please provide a frozen column separator as the one for the WPF DataGrid:
https://docs.telerik.com/devtools/wpf/controls/radgridview/columns/frozen-columns
thank you
Please provide an [autoSync] option of the ColumnMenuChooser component as the [autoSync] option for the ColumnChooser component:
https://www.telerik.com/kendo-angular-ui/components/grid/api/ColumnChooserComponent/#toc-autosync
Thank you.
Hi Team
It would be very helpful if Grid allow to prevent focus on cell out-of-box, at the moment, we have to handle focusin event then set focus to other cell, however when using navigation keys or shortcut key, we need to handle differently depend on which cell should be focus next.
Hello Telerik,
We have implemented a custom reusable filter cell component similar to the example of the multi-select checkbox example from the docs. The difficulty using that example however, is that when the filter is updated, the other filters in the grid are removed due to the use of filterservice.filter. Because the CompositeFilterDescriptor can contain both filters and composite filters, why does the base filter cell component's base methods not allow a CompositeFilterDescriptor to be provided to the UpdateFilter method?
protected filterByField(field: string): FilterDescriptor;
protected filtersByField(field: string): FilterDescriptor[];
protected removeFilter(field: string): CompositeFilterDescriptor;
protected updateFilter(filter: FilterDescriptor): CompositeFilterDescriptor;
protected applyFilter(filter: CompositeFilterDescriptor): void;
Our method for implementing the multi-checkbox filter cell was to build a composite filter using 'Or' logic and each selected value added as a filter descriptor with operator 'eq' and the selected item value as the value of the filter, and use a similar strategy as the base filter cell component to add this composite filter to the filter service's composite filter.
private getSelectedFilters(values: Item[]): CompositeFilterDescriptor {
const selected: FilterDescriptor[] = values.map((value) => {
return {
field: this.field,
operator: 'eq',
value: value.value,
};
});
return {
filters: selected,
logic: 'or',
};
}
public onChange(values: Item[]): void {
this.selectedValues = values;
const root = this.filter || {
filters: [],
logic: 'and',
};
this.removeFilter(this.field);
if (values !== null && values.length !== 0) {
root.filters.push(this.getSelectedFilters(values));
}
this.filterService.filter(root);
}
If the base filter cell component allowed the CompositeFilterDescriptor type or the FilterDescriptor type in the updateFilters method, we could simplify the logic in our filter cell component to be similar to the patterns shown in the drop-down list filter component example, as shown below, but with a composite filter descriptor such as the one generated by the above getSelectedFilters function.
this.applyFilter(
value === null // if value of the default item
? this.removeFilter(this.valueField) // remove the filter
: this.updateFilter({
// otherwise add/modify the filter for the field with the value
field: this.valueField,
operator: 'eq',
value,
})
); // and update the root filter
I think this would be a beneficial addition to the Kendo Angular2 product, as it would enable many more reusable filter components to be created more easily and also simplify/ enhance some of the existing examples you provide. If you would like more information or the full multiselect-filter component, I would be happy to supply it.
Thank you!
Can you add "extra" field to FilterableSettings to allow the user to set extra globally for all columns in a grid?
https://www.telerik.com/kendo-angular-ui/components/grid/api/FilterableSettings/
Currently, if I want to set extra to false for a column, I need to do something like this:
<kendo-grid-column field="ProductName" title="Product Name">
<ng-template kendoGridFilterMenuTemplate let-filter let-column="column" let-filterService="filterService">
<kendo-grid-string-filter-menu [extra]="false" [column]="column" [filter]="filter" [filterService]="filterService">
</kendo-grid-string-filter-menu>
</ng-template>
</kendo-grid-column>
But it would be simpler if we can do filterable:{extra:false} just like Kendo UI for jQuery. https://docs.telerik.com/kendo-ui/api/javascript/ui/grid/configuration/filterable.extra