Skip to content

Commit 5cf12fc

Browse files
authored
Modified the RadzenSplitButton to allow customizing its dropdown icon. (#1530)
* Modified the RadzenSplitButton to allow customizing its dropdown icon. * Changed the text in demo page.
1 parent 5abc923 commit 5cf12fc

File tree

4 files changed

+61
-2
lines changed

4 files changed

+61
-2
lines changed

Radzen.Blazor/RadzenSplitButton.razor

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@
4040
}
4141
}
4242
}
43-
</button><button tabindex="-1" disabled="@IsDisabled" onclick="@OpenPopupScript()" class="@getPopupButtonCss()" type="button" aria-label="@OpenAriaLabel">
44-
<span aria-hidden="true" class="rz-button-icon-left rzi rzi-chevron-down"></span><span class="rz-button-text"></span>
43+
</button>
44+
<button tabindex="-1" disabled="@IsDisabled" onclick="@OpenPopupScript()" class="@getPopupButtonCss()" type="button" aria-label="@OpenAriaLabel">
45+
<RadzenIcon Icon="@DropDownIcon" />
4546
</button>
4647
<div id="@PopupID" class="rz-splitbutton-menu">
4748
<ul class="rz-menu-list">

Radzen.Blazor/RadzenSplitButton.razor.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,12 @@ private string getButtonSize()
139139
[Parameter]
140140
public string OpenAriaLabel { get; set; } = "Open";
141141

142+
/// <summary>
143+
/// Gets or sets the icon of the drop down.
144+
/// </summary>
145+
[Parameter]
146+
public string DropDownIcon { get; set; } = "arrow_drop_down";
147+
142148
/// <summary>
143149
/// Gets or sets the click callback.
144150
/// </summary>
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
@inject NotificationService NotificationService
2+
<div class="container-fluid splitbutton-demo">
3+
<div class="row mb-4">
4+
<div class="col">
5+
<RadzenText TextStyle="TextStyle.H6" TagName="TagName.H3">DropDown Icon</RadzenText>
6+
<RadzenSplitButton Click=@(args => OnClick(args, "Opened SplitButton")) Text="SplitButton" DropDownIcon="keyboard_double_arrow_down">
7+
<ChildContent>
8+
<RadzenSplitButtonItem Text="Item1" Value="1" />
9+
<RadzenSplitButtonItem Text="Item2" Value="2" />
10+
</ChildContent>
11+
</RadzenSplitButton>
12+
13+
<RadzenSplitButton Click=@(args => OnClick(args, "Opened SplitButton")) Text="SplitButton" DropDownIcon="expand_circle_down">
14+
<ChildContent>
15+
<RadzenSplitButtonItem Text="Item1" Value="1" />
16+
<RadzenSplitButtonItem Text="Item2" Value="2" />
17+
</ChildContent>
18+
</RadzenSplitButton>
19+
20+
<RadzenSplitButton Click=@(args => OnClick(args, "Opened SplitButton")) Text="SplitButton" DropDownIcon="keyboard_arrow_down">
21+
<ChildContent>
22+
<RadzenSplitButtonItem Text="Item1" Value="1" />
23+
<RadzenSplitButtonItem Text="Item2" Value="2" />
24+
</ChildContent>
25+
</RadzenSplitButton>
26+
</div>
27+
</div>
28+
</div>
29+
30+
@code {
31+
void OnClick(RadzenSplitButtonItem item, string buttonName)
32+
{
33+
if (item != null)
34+
{
35+
NotificationService.Notify(new NotificationMessage { Severity = NotificationSeverity.Info, Summary = "SplitButton Item Clicked", Detail = $"{buttonName}, item with value {item.Value} clicked" });
36+
}
37+
else
38+
{
39+
NotificationService.Notify(new NotificationMessage { Severity = NotificationSeverity.Info, Summary = "SplitButton Clicked", Detail = $"{buttonName} clicked" });
40+
}
41+
}
42+
}

RadzenBlazorDemos/Pages/SplitButtonPage.razor

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,16 @@
9595
<SplitButtonAlwaysOpenPopup />
9696
</RadzenExample>
9797

98+
<RadzenText Anchor="splitbutton#customize-dropdown-icon" TextStyle="TextStyle.H5" TagName="TagName.H2" class="rz-pt-12">
99+
DropDown icon of SplitButton
100+
</RadzenText>
101+
<RadzenText TextStyle="TextStyle.Body1" class="rz-mb-8">
102+
Customize the dropdown icon of SplitButton. Use <code>DropDownIcon</code> parameter to set the icon.
103+
</RadzenText>
104+
<RadzenExample ComponentName="SplitButton" Example="CustomizeSplitButtonDropDownIcon">
105+
<SplitButtonDropDownIcon />
106+
</RadzenExample>
107+
98108
<RadzenText Anchor="splitbutton#keyboard-navigation" TextStyle="TextStyle.H5" TagName="TagName.H2" class="rz-pt-12">
99109
Keyboard Navigation
100110
</RadzenText>

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy