Quantcast
Channel: Active questions tagged blazor - Stack Overflow
Viewing all articles
Browse latest Browse all 4054

Filter for Timespan in RadzenDataGrid

$
0
0

I have a RadzenDataGrid where I display a Timespan that comes from a DB. When I want to filter the timespan (e.g. for "is not null", nothing happens and the args.Filter has no value, so it is just "it => ". Any ideas if this is even possible with timespans? Here the datagrid:

<RadzenDataGrid @ref="_grid" AllowFiltering="true" AllowColumnResize="true"                  FilterMode="@FilterMode.Advanced" LoadData="@LoadData" Data="@_shipments"><Columns><RadzenDataGridColumn TItem="SdShipment" Property="@nameof(SdShipment.OrderNumber)" Title="Order Number" Frozen="true" /><RadzenDataGridColumn TItem="Shipment" Property="LifeSpan" Title="Life Span" Sortable="true" Filterable="true"><Template Context="data">            @((data.LifeSpan.HasValue) ? data.LifeSpan.Value.Days.ToString() : "N/A")</Template></RadzenDataGridColumn><RadzenDataGridColumn TItem="Shipment" Property="Material.Type" Title="Material Type" /><RadzenDataGridColumn TItem="Shipment" Property="Asset.AssetType" Title="Asset Type" /></Columns></RadzenDataGrid>private async Task LoadData(LoadDataArgs args){  _isLoading = true;  await InvokeAsync(StateHasChanged);  try  {    await using var context = await ContextFactory.CreateDbContextAsync();    var query = context.shipments                .AsQueryable();    var filterActive = false;    if(!string.IsNullOrEmpty(args.Filter))    {      query = query.Where(args.Filter);      filterActive = true;    }    if(!string.IsNullOrEmpty(args.OrderBy))    {      query = query.OrderBy(args.OrderBy);    }      _shipments = query.Skip(args.Skip ?? 0).Take(args.Top ?? 250).ToList();    }    catch(Exception ex)    {      ...    }    finally    {      _isLoading = false;      await InvokeAsync(StateHasChanged);    }}

Viewing all articles
Browse latest Browse all 4054

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>