Accounts, BookingRules, BookingTexts, BankTransactions each get an <FluentSearch> above the grid, backed by a computed Filtered IQueryable over an in-memory source list. FluentSearch is Immediate, so filtering happens on each keystroke; data sizes are small enough for per-render LINQ. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
18 lines
No EOL
1 KiB
Text
18 lines
No EOL
1 KiB
Text
@page "/banktransactions"
|
|
<PageTitle>BankTransactions</PageTitle>
|
|
|
|
<FluentSearch @bind-Value="filter" Immediate="true" Placeholder="Filter…" Style="width: 300px;"/>
|
|
<FluentPaginator State="@pagination" />
|
|
|
|
<div id="datagrid-container">
|
|
<FluentDataGrid Items="@Filtered" Pagination="@pagination" RowSize="DataGridRowSize.Small" AutoItemsPerPage="true" Style="overflow-y:hidden;">
|
|
<PropertyColumn Title="Buchungsdatum" Width="170px" Property="@(p => p.BookingDate)" Format="dd.MM.yyyy" Sortable="true" IsDefaultSortColumn="true" InitialSortDirection="SortDirection.Descending" />
|
|
<PropertyColumn Title="Valutadatum" Width="170px" Property="@(p => p.ValueDate)" Format="dd.MM.yyyy" Sortable="true" />
|
|
<PropertyColumn Title="Text" Property="@(p => p.Text)" />
|
|
<PropertyColumn Title="Betrag" Width="150px" Property="@(p => p.Value)" Format="C2" Align="Align.End"/>
|
|
</FluentDataGrid>
|
|
</div>
|
|
|
|
@code {
|
|
PaginationState pagination = new PaginationState() { ItemsPerPage = 10 };
|
|
} |