Как мне установить для @pagination.ItemsPerPage значение «Все»? в QuickGrid?
Я хотел бы ввести «Все» в качестве<option>
это привязывается к @pagination.ItemsPerPage" в MS QuickGrid.
Выбранная настройка игнорируется.
2 ответа
Кажется, тип Pagination был заменен на PaginationState. Я нашел решение...
<select @bind="@pagination.ItemsPerPage">
<option>5</option>
<option>10</option>
<option>15</option>
<option>20</option>
<option>25</option>
<option value="@pagination.TotalItemCount">All</option>
</select>
Затем возникла проблема, из-за которой QuickGrid генерировал несколько пустых строк при фильтрации источника данных. Пришлось закомментировать некоторые строки в коде QuickGrid...
private void RenderNonVirtualizedRows(RenderTreeBuilder __builder)
{
var initialRowIndex = 2; // aria-rowindex is 1-based, plus the first row is the header
var rowIndex = initialRowIndex;
foreach (var item in _currentNonVirtualizedViewItems)
{
RenderRow(__builder, rowIndex++, item);
}
// When pagination is enabled, by default ensure we render the exact number of expected rows per page,
// even if there aren't enough data items. This avoids the layout jumping on the last page.
// Consider making this optional.
//if (Pagination is not null)
//{
// while (rowIndex++ < initialRowIndex + Pagination.ItemsPerPage)
// {
// <tr></tr>
// }
//}
}
Работает сейчас! :-)