@@ -107,23 +114,33 @@ internal void Toggle()
isOpen = !isOpen;
if (isOpen)
{
- dropdownMenuAttributes["data-popper-placement"] = Position switch
- {
- DropdownPosition.Up => "top-start",
- DropdownPosition.End => "right-start",
- DropdownPosition.Start => "left-start",
- _ => "bottom-start"
- };
-
- activatorContext.Attributes["aria-expanded"] = "true";
+ AddOpenDropdownMenuAttributes();
}
else
{
- dropdownMenuAttributes.Remove("data-popper-placement");
- activatorContext.Attributes["aria-expanded"] = "false";
+ RemoveDropdownMenuAttributes();
}
}
+ private void AddOpenDropdownMenuAttributes()
+ {
+ dropdownMenuAttributes["data-popper-placement"] = Position switch
+ {
+ DropdownPosition.Up => "top-start",
+ DropdownPosition.End => "right-start",
+ DropdownPosition.Start => "left-start",
+ _ => "bottom-start"
+ };
+
+ activatorContext.Attributes["aria-expanded"] = "true";
+ }
+
+ private void RemoveDropdownMenuAttributes()
+ {
+ dropdownMenuAttributes.Remove("data-popper-placement");
+ activatorContext.Attributes["aria-expanded"] = "false";
+ }
+
private string ComputeDropdownContainerClass()
{
var builder = new CssClassBuilder("dropdown");
@@ -237,8 +254,7 @@ internal async Task FocusPreviousItemAsync(BitDropdownItem current)
internal async Task CloseAsync()
{
isOpen = false;
- activatorContext.Attributes["aria-expanded"] = "false";
- dropdownMenuAttributes.Remove("data-popper-placement");
+ RemoveDropdownMenuAttributes();
StateHasChanged();
if (activatorContext.ActivatorRef.Id is not null)
diff --git a/src/BitBlazor/Components/Dropdown/BitDropdownItem.razor.cs b/src/BitBlazor/Components/Dropdown/BitDropdownItem.razor.cs
index 7b1d9bf..7798d59 100644
--- a/src/BitBlazor/Components/Dropdown/BitDropdownItem.razor.cs
+++ b/src/BitBlazor/Components/Dropdown/BitDropdownItem.razor.cs
@@ -135,6 +135,8 @@ private async Task ClickAsync()
{
NavigationManager.NavigateTo(Href);
}
+
+ await Parent.CloseAsync();
}
private async Task OnKeyDownAsync(KeyboardEventArgs args)
diff --git a/src/BitBlazor/Components/Pagination/BitPagination.razor b/src/BitBlazor/Components/Pagination/BitPagination.razor
index ab9c0ae..16e79ae 100644
--- a/src/BitBlazor/Components/Pagination/BitPagination.razor
+++ b/src/BitBlazor/Components/Pagination/BitPagination.razor
@@ -25,19 +25,39 @@
+ @if (ShowChanger)
+ {
+
+
+
+
+
+ @foreach (var pageSize in PageSizeOptions)
+ {
+
+ @RenderPageSizeLabel(pageSize)
+
+ }
+
+
+ }
+
@if (ShowJumpToPage)
{