You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Connected.Components/Components/Table/TablePager.razor

52 lines
2.5 KiB

2 years ago
@namespace Connected.Components
@inherits UIComponent
<ToolBar @attributes="UserAttributes" Class="@Classname" Style="@Style">
@if (HorizontalAlignment == HorizontalAlignment.End ||
(HorizontalAlignment == HorizontalAlignment.Right && !RightToLeft) ||
(HorizontalAlignment == HorizontalAlignment.Left && RightToLeft) ||
HorizontalAlignment == HorizontalAlignment.Center)
{
<div class="mud-table-pagination-spacer"></div>
}
@if (!HideRowsPerPage)
{
<div class="@PaginationClassname">
<div class="mud-table-pagination-caption">
<div class="mud-table-pagination-information">@RowsPerPageString</div>
</div>
<CascadingValue Name="SubscribeToParentForm" Value="false" IsFixed>
<Select T="string" ValueChanged="SetRowsPerPage" Value="@Table?.RowsPerPage.ToString()" Class="mud-table-pagination-select" DisableUnderLine="true" Dense="true">
@foreach (int pageSize in PageSizeOptions)
{
<SelectItem T="string" Value="@pageSize.ToString()">@pageSize.ToString().ToUpper()</SelectItem>
}
</Select>
</CascadingValue>
</div>
}
@if (!HidePageNumber)
{
<div class="mud-table-pagination-caption">
<div class="mud-table-page-number-information">@Info</div>
</div>
}
@if (!HidePagination)
{
<div class="mud-table-pagination-actions">
<IconButton Class="mud-flip-x-rtl" Icon="@FirstIcon" Disabled="@BackButtonsDisabled" @onclick="@(() => Table.NavigateTo(Page.First))" aria-label="First page" />
<IconButton Class="mud-flip-x-rtl" Icon="@BeforeIcon" Disabled="@BackButtonsDisabled" @onclick="@(() => Table.NavigateTo(Page.Previous))" aria-label="Previous page" />
<IconButton Class="mud-flip-x-rtl" Icon="@NextIcon" Disabled="@ForwardButtonsDisabled" @onclick="@(() => Table.NavigateTo(Page.Next))" aria-label="Next page" />
<IconButton Class="mud-flip-x-rtl" Icon="@LastIcon" Disabled="@ForwardButtonsDisabled" @onclick="@(() => Table.NavigateTo(Page.Last))" aria-label="Last page" />
</div>
}
@if (HorizontalAlignment == HorizontalAlignment.Start ||
(HorizontalAlignment == HorizontalAlignment.Left && !RightToLeft) ||
(HorizontalAlignment == HorizontalAlignment.Right && RightToLeft) ||
HorizontalAlignment == HorizontalAlignment.Center)
{
<div class="mud-table-pagination-spacer"></div>
}
</ToolBar>