Declined
Last Updated: 09 Jun 2021 15:39 by ADMIN
Created by: Anil
Comments: 2
Category: Grid
Type: Feature Request
1
As of now we have options of sorting the grouped column either in ascending or descending order. Can we have asc, desc and no sort the same way we have for the grid columns?
Declined
Last Updated: 01 Dec 2022 11:11 by ADMIN
Please provide an option that prevents the destruction of the detail template when it is expanded and collapsed. That will allow to maintain the state of the detail template. Such functionality would be dependent on the Grid data operations though. Meaning that, even if the detail templates aren't destroyed when collapsed they will be destroyed if the Grid is paged for example.
Declined
Last Updated: 31 Aug 2023 14:52 by ADMIN
Created by: Rohit
Comments: 3
Category: Grid
Type: Feature Request
2
I would like to achieve row resize. Just like you have column resize, user should be able to point the mouse at the bottom of the row and drag to resize the row. 
Unplanned
Last Updated: 19 Jul 2024 10:23 by ADMIN
Created by: Kimberly
Comments: 5
Category: Grid
Type: Feature Request
10

The Angular Grid export only includes PDF and Excel formats. Requesting an enhancement to be able to export to CSV for purposes of opening the data in a text editor other than Excel or to allow for easier upload into other applications.

There are articles that show how to do this but it would be better out of the box from Telerik.

https://stackblitz.com/edit/kendo-angular-grid-csv-export?file=app/app.component.ts

https://www.codeproject.com/Articles/5162666/CSV-Export-In-Angular-with-Kendo-Control 

 

 

Declined
Last Updated: 14 Jul 2023 09:57 by ADMIN
Created by: Jesse
Comments: 1
Category: Grid
Type: Feature Request
1

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

Declined
Last Updated: 14 Jul 2023 09:54 by ADMIN
Created by: Ed
Comments: 1
Category: Grid
Type: Feature Request
1

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.

Declined
Last Updated: 14 Jul 2023 09:37 by ADMIN
In the custom filter menu, I want the ability to add the operators and logic dropdown as available in the built-in filter menu template. Instead of manually adding the dropdowns, a built-in option will be nice to have.
Declined
Last Updated: 11 Jul 2023 15:11 by ADMIN
Created by: n/a
Comments: 1
Category: Grid
Type: Feature Request
0
Provide an option to animate the sorting and reordering functionalities.
Duplicated
Last Updated: 02 Jul 2020 10:10 by ADMIN
Created by: Khushbu
Comments: 1
Category: Grid
Type: Feature Request
1
Regarding kendo grid column locked feature, currently only columns from left can be locked. Can't we have any such feature which allows us to block right most columns?

When there are multiple columns in grid, horizontal scroll is added. In such scenario, action column which is generally the right most column is not visible. To access it user has to scroll till right most column. It would be of great use in such scenario
Unplanned
Last Updated: 26 Feb 2024 12:37 by ADMIN

We need to overwrite kendo-grid-column-chooser component reset button logic. We need reset button to select all columns that were selected during the initial load of grid.instead of current reset logic. Is there a way to overwrite reset button logic?

I tried <kendo-grid-column-chooser (reset)="resetColumnMenu($event)"></kendo-grid-column-chooser> but it didn't work.

Declined
Last Updated: 11 Jul 2023 15:07 by ADMIN
Created by: Troy Web Consulting
Comments: 2
Category: Grid
Type: Feature Request
1

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!

Completed
Last Updated: 16 Jun 2021 12:35 by ADMIN
Release 2020.3
Created by: Clint Singer
Comments: 1
Category: Grid
Type: Bug Report
0

Hi,

It seems there is an issue with the material theme and nested grids.   When you have master-detail nested grids, the entire last nested grid gets applied with the same styling as the bottom rows of all the other nested grid. 

The styling in my browser is showing up as

.k-grid .k-grid-content tr:last-child td.k-grid .k-grid-content-locked tr:last-child td {
  1. border-bottom-width: 0;

 

Which causes the rows in the last grid to not appear.   

I have attached an image where I have changed the styling to 5px and red so you can see that it is being incorrectly styled.  You can see that even the other rows in in the last grid are getting styled along with the last row style.

I am running the latest version of Kendo.

Cheers,

Clint

Unplanned
Last Updated: 07 Jan 2021 07:58 by FISMA-IRM
Created by: Christopher
Comments: 2
Category: Grid
Type: Feature Request
4

Is it possible to modify the default filter for a date on a grid so that it is a "between" filter? i.e. the second clause will show "Is before or equal to" instead of "Is after or equal to"?

 

https://stackblitz.com/edit/angular-ygnmj1

Preferred default:

instead of:

Declined
Last Updated: 01 Dec 2022 09:18 by ADMIN
Created by: Cédric
Comments: 1
Category: Grid
Type: Feature Request
0
Please provide a built-in rowStyle callback similar to the existing rowClass one. Thank you.
Declined
Last Updated: 11 Jul 2023 15:01 by ADMIN
Created by: John
Comments: 7
Category: Grid
Type: Feature Request
1

Hello,

   You have this jQuery example: Binding to Kinvey Backend Services.  Do you have a similar example for Angular?  I cannot find one.  

Thank you.

Unplanned
Last Updated: 23 Mar 2020 07:36 by ADMIN

As described here:

https://github.com/telerik/kendo-angular/issues/2809#event-3148229980

We are asking to add a simple css class to every master row opened. We have just to change stile every time row has detail open.

Thanks

Completed
Last Updated: 18 Mar 2020 07:20 by ADMIN
Created by: Troels
Comments: 3
Category: Grid
Type: Bug Report
0

When using the Grid control inside an Angular component which is shown in a dialog (via MatDialog), the component is not properly destroyed after closing the dialog. The same problem doesn't occur when the component instead contains, say, a TreeView.

The problem occurs in Angular 8 and 9, in the Chrome browser. I've created an Angular 8 demo here: https://stackblitz.com/edit/angular-thr9j1 and an Angular 9 demo here: https://stackblitz.com/edit/angular-ksfrqy

Run the demo, press the "Open dialog" button a number of times, then take a heap snapshot in the Chrome dev console (be sure to first select the proper Javascript VM instance, containing "angular-thr9j1" or "angular-ksfrqy"). The component shown in the dialog is called "MemoryLeakDialogComponent", so use that as a filter. You'll see that for every time you opened the dialog there's now an instance of the component on the heap.

The MemoryLeakDialogComponent contains just an empty kendo-grid tag with no attributes. If you edit its dialog template to instead contain a kendo-treeview component, everything is properly destroyed and garbage collected, which leads me to suspect a memory leak in the Grid component.

Declined
Last Updated: 11 Jul 2023 15:02 by ADMIN
Created by: Brittany
Comments: 1
Category: Grid
Type: Feature Request
1
Please provide a built-in date range option for the filter input property of the Column component.
Declined
Last Updated: 11 Jul 2023 15:03 by ADMIN

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

Declined
Last Updated: 28 Feb 2020 14:12 by ADMIN
Created by: Peter
Comments: 1
Category: Grid
Type: Feature Request
1

Issue: unable to filter data by itself written filter handlers.

Current implementation:

/**
 * A complex filter expression. For more information, refer to the [`filterBy`]({% slug api_kendo-data-query_filterby %}) method.
 */
export interface CompositeFilterDescriptor {
    /**
     * The logical operation to use when the `filter.filters` option is set.
     *
     * The supported values are:
     * * `"and"`
     * * `"or"`
     */
    logic: 'or' | 'and';
    /**
     * The nested filter expressions&mdash;either [`FilterDescriptor`]({% slug api_kendo-data-query_filterdescriptor %}), or [`CompositeFilterDescriptor`]({% slug api_kendo-data-query_compositefilterdescriptor %}). Supports the same options as `filter`. You can nest filters indefinitely.
     */
    filters: Array<FilterDescriptor | CompositeFilterDescriptor>;
}


Where filter descriptor has next available fields:


export interface FilterDescriptor {
    /**
     * The data item field to which the filter operator is applied.
     */
    field?: string | Function;
    /**
     * The filter operator (comparison).
     *
     * The supported operators are:
     * * `"eq"` (equal to)
     * * `"neq"` (not equal to)
     * * `"isnull"` (is equal to null)
     * * `"isnotnull"` (is not equal to null)
     * * `"lt"` (less than)
     * * `"lte"` (less than or equal to)
     * * `"gt"` (greater than)
     * * `"gte"` (greater than or equal to)
     *
     * The following operators are supported for string fields only:
     * * `"startswith"`
     * * `"endswith"`
     * * `"contains"`
     * * `"doesnotcontain"`
     * * `"isempty"`
     * * `"isnotempty"`
     */
    operator: string | Function;
    /**
     * The value to which the field is compared. Has to be of the same type as the field.
     */
    value?: any;
    /**
     * Determines if the string comparison is case-insensitive.
     */
    ignoreCase?: boolean;
}


In case when we need to filter in array of array items, and Kendo grid does not allow us this functionality out of the box, please provide at least availability to make it by ourselfs. 

My suggestion structure is

export interface FilterDescriptor {
    /**
     * The data item field to which the filter operator is applied.
     */
    field?: string | Function;
    /**
     * The filter operator (comparison).
     *
     * The supported operators are:
     * * `"eq"` (equal to)
     * * `"neq"` (not equal to)
     * * `"isnull"` (is equal to null)
     * * `"isnotnull"` (is not equal to null)
     * * `"lt"` (less than)
     * * `"lte"` (less than or equal to)
     * * `"gt"` (greater than)
     * * `"gte"` (greater than or equal to)
     *
     * The following operators are supported for string fields only:
     * * `"startswith"`
     * * `"endswith"`
     * * `"contains"`
     * * `"doesnotcontain"`
     * * `"isempty"`
     * * `"isnotempty"`
     */
    operator: string | Function;
    /**
     * The value to which the field is compared. Has to be of the same type as the field.
     */
    value?: any;
    /**
     * Determines if the string comparison is case-insensitive.
     */
    ignoreCase?: boolean;

     /** --------------- ADDITIONAL DATA --------------- */
 
     /**
     * Manages filtering operations with data for single row
     */
    handler?: (dataItem: T) :  Observable<boolean> | boolean;
    /**
     * Filter name to display on grid
     */
    name?: Observable<string> | string;
}

Where handler is providing to us availability to filter by ourselfs data in which way.

Thank you.
Best regardings,
Peter Busliuk. 

Tradeix.com, Lohika Inc.