Hi. We have a master-detail grid with the detail being a nested grid.
Unfortunately, as the master grid is scrolled, the detail grid header is scrolled out out of view, and the columns look odd because they do not match the master grid header.
Before scrolling:
After scrolling:
We would like to make the master row and detail header sticky.
Thanks.
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.
Thank you for providing information about customization using <kendo-grid-message>
We can customize text inside drag a column here.... using <kendo-grid-message>
but in that line I am willing to add column chooser and one icon
i.e in tag <kendo-grid-group-panel> I want to add column chooser and one icon
please find below screen shot, in highlighted areas I want to add mentioned things
I want to replace highlighted areas in tag <kendo-grid-group-panel> as
Please help me for this issue
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:
When resizing grid columns so the last column does not reach the right border of the grid (sum of columns width < current grid width), loading stored state (or changing column width property in any way) does not restore the columns width proportionaly to use the full width of the grid.
Note: in this case, the default columns width sum and stored state columns width sum are always inferior to the grid width in order to use proportionality and adapt to every screen size.
In our implementation, we made a "Reset columns view" (working exactly as the loading store data), but if the user play arround with the columns as described above), the reset is broken.
Reproduce steps:
Using the persisting state exemple available in the doc: https://stackblitz.com/edit/angular-3jdmzy?file=app%2Fapp.component.ts
- Click "Save current state"
- Resize grid columns so the last column does not reach the right border of the grid

- Click "Load saved state", the columns are resized proportionaly of the saved state but on the base of previous columns width sum instead of the full grid width.

Currently it is possible to override certain messages of the kendo grid with the KendoGridMessages component.
However, this applies the message to the entire grid at once.
For example assume I have a grid with 2 boolean value columns, I would like to override the filter menu IsTrue & IsFalse messages to another string.
This is entirely possible with the KendoGridMessages component.
After the columns in my grid I might put something like this:
This would work if I wanted both boolean filter menus to display Yes & No.
But lets suppose I have set a template for cells in one of the columns like so:
the cells in this column would now display 'Validated' or 'Not Validated' instead of true/false.
It would make more sense for this column filter menu to have 'Validated' & 'Not Validated' instead of the Yes/No message that has been set to the entire grid.
Currently I would have to choose between one or the other strings for the boolean filter, either Yes/No or Validated/Not Validated.
This is a simple example, and in this case using the Yes/No messages for both wouldn't cause a user too much head-ache, but there are plenty of other more complex use cases where not having individual grid messages could cause confusion.
Here is a Stackblitz where I have mocked the grid:
https://stackblitz.com/edit/angular-qynsrr?file=src%2Fapp%2Fapp.component.ts
In the above Stackblitz I've mocked what I would expect it to work like.
I would expect that you can add a KendoGridMessages in the grid to set a default, and then on each column override it as necessary with another component or another KendoGridMessages.
Please provide an option to configure the icon of the <kendo-grid-column-chooser> component. The available configurable options as input properties could be:
similar to the same input properties for the Button component:
https://www.telerik.com/kendo-angular-ui/components/buttons/api/ButtonComponent/
thank you
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 filterI 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