I'm experiencing an issue with the filtering and sorting functions in a Kendo Grid. This problem seems to occur with the latest version of Kendo UI for Angular in combination with Angular 18.
I have created a sample project on StackBlitz where the issue can be reproduced: StackBlitz Project.
In the example, you can see that the filtering and sorting capabilities are enabled. However, both filtering and sorting do not seem to work correctly.
Here is a relevant code snippet:
<kendo-grid [data]="gridData" [selectable]="selectableSettings" [navigable]="true" [height]="300" filterable="menu, row" [sortable]="true">
<kendo-grid-column field="ProductName" title="Product Name"></kendo-grid-column>
<kendo-grid-column field="UnitsInStock" title="Units In Stock"></kendo-grid-column>
<kendo-grid-column field="UnitsOnOrder" title="Units On Order"></kendo-grid-column>
<kendo-grid-column field="ReorderLevel" title="Reorder Level"></kendo-grid-column>
</kendo-grid>
What I have tried:
Current behavior:
Expected behavior:
Am I doing something wrong, or does this seem to be an issue with the Kendo UI framework? Any suggestions or solutions are welcome!
Thanks in advance for the help!
https://stackblitz.com/edit/angular-pxppfk-s4ix7b?file=tsconfig.json
Change target in tsconfig in this stackblitz to targer es2022 to recreate bug
The inner circle of radio buttons are incorrectly scaled/positioned in Bootstrap themes. The radio buttons in bootstrap theme are by default dependent on "rem" unit. For applications, that specify different base for "rem" unit, than 16px, it is possible to naturally override dimensions of the radio button without any specific overrides.
In example application, the following points are important:
1. :root specifies font-size=24px. So 1rem=24px.
2. Radio buttons uses size="small". The width and height then defaults to 0.75rem=18px.
Important note, is that the wrong positioning of inner circle is most visible when scaling down the browser view. There is offset by 1px to the sides. The image in the attachments is screenshot from the application and demonstrates the offset in pixels from the sides. The first number above the radio button is the offset of the inner circle in pixels from the left, the second number after "/" is the offset of inner circle from the right.
This issue appears only if the dimensions are being increased/decreased in respect to the default "medium" size. If the radio button is scaled using "scale" CSS function, then the scaling is correctly preserved. Also I didn't notice any problem for the "medium" sized radio button in any browser view. The root font-size might not be important for bug to be reproducible, but inconsistencies are then more visible.
Using the Editor component with Form Support, if I choose the style Heading 1 and type some letter.
I clean the value using only backspace key on the keyboard and the value of the form control is <h1></h1>.
This is reproductible on the demo : https://www.telerik.com/kendo-angular-ui/components/editor/forms/#toc-template-driven-forms
Expected result
1. Start using the Kendo Tree View in Angular.
2. Load a large dataset for the Kendo Tree View, observe the time taken to render the Tree View.
3. The timing will increase if the dataset keeps on increasing.
4. Suggest some ways to reduce or optimize it.
This is how I am using the Kendo TreeView in Angular,
I need access to Sketch support files containing the existing UI elements for Kendo for Angular so that I can create comps for my design. Ideally this would be a collection of sketch symbols that match the current Kendo UI design.
input to grid:
@Input()
public additionalExcelExportInfos: { additionalWorksheetTitle: string,
parameters: { key: string, parameterValue: any }[]
};
output in excel file:
https://stackblitz.com/edit/angular-5elhtu?file=src%2Fapp%2Fapp.component.ts
When a detail row is used, the moment you expand one row and scroll, it automatically loads the last items from the dataset.
Ex expand row 1 - start scrolling, and it suddenly loads 5xx th row+;
When grouping is also enabled - expanding the detail row under one group, expands it under all groups.
The stackbliz is from the kendo demo page for virtualscroll (with the added detail row).
If you have a kendo grid table with some data over multiple pages and you go e.g. to the last page and then reload the data, resulting with less pages - the table is empty and you have to manually click on the first page to see the data. Here is a working example:
https://codesandbox.io/s/upbeat-lamarr-d67m8k?file=/src/app/app.component.ts
Step 1. Go to the last page
Step 2. Click on the button "'Reset data" <- you see no data
Step 3. Click on the first page <- You see the data
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
If ComboBox is used in a form and its required, screen readers will not pick up this information since it is not passed on to the underlying input field.
The example a nice workaround, but a final solution should have this automatically implemented by the control.
https://stackblitz.com/edit/angular-2ck3gu
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.
Would like the API expanded to include support for adding your own tool(s) that would allow you to tag the selected text with custom html tags.
For example, would like to be able to highlight some text, hit the custom button and then "text goes here" is replaced with "<custom>text goes here</custom>". From some documentation research, it looks like you don't support custom tools that would be able to accomplish this, is that correct?
From this previous post, it states that such a thing is not supported?
https://www.telerik.com/forums/add-custom-tool
Fix ONE of the following:
Required ARIA children role not present: group, option
Element has no aria-busy="true" attribute
When an assistive technology encounters an element with an invalid ARIA attribute value, it might ignore the attribute or respond to it in an unexpected way. As a result, people who use assistive technologies might find the element difficult or impossible to use.
Fix ONE of the following:
Required ARIA children role not present: group, option
Element has no aria-busy="true" attribute
Currently ng-templates can only be added as tags inside a Kendo component's html tag. This forces the developer to use the template feature of an Angular Component.
This limits the flexibility of what you can do for any of these components and forces developers to make them stand alone Angular Components if they need to be used in their code. This is overkill in a lot of instances and while it works great in all the examples it is not practical in every real world situation. Especially if there is a lot of supporting HTML involved.
I have seen several other developers looking for a way to define a template outside of a component for reuse or due to some other dynamic interaction that is required. I believe this is needed throughout the Kendo library.
For example, if I am using the Kendo Splitbutton, the popup should have a class like ".k-split-button-popup". This will make it far easier to style the popups based on their "parent" or "creator".
For now, I am using the popupSettings, but I think it would be beneficial for it to be automatic.