If a Grid column is bound to a nullable bool field and some of the data source records have null values for that field they are not displayed, the Grid cells appear empty.
It would be nice if the Grid displays some text for the null values, for example just "null".
There should be a way to provide the Format for filtering of DateTime columns.
If a DateTime column has the format "dd.MM.yyyy" filtering for "EQUALS 01.01.2021" does not show lines with the timestamp "01.01.2021 01:00" but the user would expect to see this line.
Regards,
René
When I switch the culture of my App from English to Swedish, the Virtual scrolling feature of the Grid breaks.
===========
ADMIN EDIT
===========
The issue stems from invalid transform style applied to the k-virtual-position div element in Swedish culture. Due to integer to string conversion that takes culture into consideration when setting the style and/or data-translate attribute, when this number is < 0, the negative sign is longer dash for Swedish culture. This longer dash is not parsable by JS and CSS which is why the translateY transform is invalid.
As a workaround for the time being, you can try adding transform style for the k-virtual-position div, so you can override the default one and the correct dash will be applied:
<style>
.k-virtual-position {
transform: translateY(-1080px);
}
</style>
Irrespective of the grid 'grouping' technique (manual or via AutoStateInit), the <NoDataTemplate> is not displaying correctly.
All other grids that are not using Grouped columns all format correctly (when no results available).
After the update I get the following error message:
/...Views/ViewRoute.razor(13,13): Error CS0012: The type 'SortDescriptor'is defined in an assembly that isnot referenced. You must add a reference to assembly 'Telerik.DataSource, Version=2.0.10.0, Culture=neutral, PublicKeyToken=29ac1a93ec063d92'. (CS0012)
the package is installed...nevertheless I get the error
<PackageReference Include="Telerik.UI.for.Blazor" Version="2.26.0" />
<PackageReference Include="Telerik.DataSource" Version="2.0.10" />
at this position
GridState<Wegpunkte> desiredState = new GridState<Wegpunkte>()
{
SortDescriptors = new List<SortDescriptor>()
{
new SortDescriptor {Member = "TourPos", SortDirection = ListSortDirection.Ascending}
}
};
For example in the following demo:
https://demos.telerik.com/blazor-ui/grid/custom-filter-menu
If I first filter "38" by "Size" and then open the second filter menu "Product Name", I see all the product names in the pop-up, not only the previously filtered by "Size" names. I want to see in the second filter pop-up only the filtered names by "Size".
It will be nice to have this grid filter out-of-box, so you don't have to scroll to unwanted values not part of the first filter.
------------ADMIN EDIT-------------
As a possible workaround, you can use the Filter Menu Template:
It allows you to change the data for the filter menu.
Greetings!
I've been waiting for a few months now to swap to blazor, but one of the things that's currently holding us back is that the filter row can't be used together with the column menu.
I've always found this to be strange, since it's supported in the Angular and MVC versions, which we currently use.
Our users never filter via the column menu, always via the filter row. They hide/lock their columns via the column menu and sometimes sort.
This functionality is thus critical for us.
I can't find any feature request for it, nor any planned roadmap item.
Will this ever be supported because if not, we're gonna have to start looking for alternatives.
Kind regards.
It looks like the built-in validation does not respect clearing the edit item through state. If you remove invalid edit item through Grid State, the Grid stays in edit mode and the OnRowClick stops firing.
The case is similar when you try to clear an invalid InsertedItem through the Grid State - the Grid probably stays in Insert mode and some events are not firing (for example CUD events).
The TelerikGrid is kind of missing a "None" Value in the enum for the EditMode.
We need to disable the edit mode based on a value from the model (role access restricted), and I don't see any way this is possible without copy-pasting the entire grid under an if statement.
------ADMIN EDIT-------
A possible workaround at the moment is to set the "Editable" parameter of the columns to "false" or not use a command column with "edit".
Another workaround can be to attach a OnEdit handler and cancel the event based on the view model flag only. If the user cannot edit - always cancel.
Typo:
<span>Produts for sale: @productsCount </span>
Should be Products
Hi,
I am getting an unhandled exception when setting the GridState of a TelerikGrid with the SetState method that has multi-column headers.
Exception:
Unhandled exception rendering component: More than one sibling of element 'col' has the same key value, 'Telerik.Blazor.Components.GridColumn'. Key values must be unique.
Example grid:
<TelerikGrid @ref=@TestGrid Data=@TestData FilterMode=GridFilterMode.FilterMenu Sortable="true" SortMode=SortMode.Multiple TItem="TestDataItem">
<GridColumns>
<GridColumn Title="Test Column 1" Field=@nameof(TestDataItem.TestColumn1) />
<GridColumn Title="Test Column Group" />
<Columns>
<GridColumn Title="Test Column 2" Field=@nameof(TestDataItem.TestColumn2) />
<GridColumn Title="Test Column 3" Field=@nameof(TestDataItem.TestColumn3) />
</Columns>
</GridColumn>
</GridColumns>
<TelerikGrid>
I have tried to set the Id or @key of the columns but nothing has fixed this issue.
Try to dynamically switch between Scrollable and Virtual modes. You would need to manually refresh the Skip property through the Grid state, or it won't work.
-----------ADMIN EDIT------------
You can use the ValueChanged handler to manually refresh the Skip property as shown below.
public TelerikGrid<ExpandoObject> TelerikGrid { get; set; }
private bool IsPageable = false;
private int Page { get; set; }
public void ChangeHandler(bool value)
{
//Sync the paging with scrolling
if (value)
{
IsPageable = value;
var state = TelerikGrid.GetState();
state.Skip = 0;
state.Page = 3;
_ = TelerikGrid.SetState(state);
}
IsPageable = value;
StateHasChanged();
}
I want to use a multi-checkbox filter with ExpandoObject in Grid.