Skip to content

Commit 26fe262

Browse files
authored
RangeSlider Customizable Value Labels (#360)
1 parent aa3de66 commit 26fe262

File tree

3 files changed

+27
-9
lines changed

3 files changed

+27
-9
lines changed

CodeBeam.MudBlazor.Extensions/Components/RangeSlider/MudRangeSlider.razor

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,13 @@
3434
<input class="mud-slider-input" aria-valuenow="@UpperValue" aria-valuemin="@_min" aria-valuemax="@_max" role="slider" @attributes="UserAttributes" type="range" min="@_min" max="@_max" step="@_step" disabled="@(Disabled || _userInvalidatedRange || (Range && DisableMax))"
3535
@bind-value="@UpperText" @bind-value:event="@((Immediate ? "oninput" : "onchange"))" />
3636

37-
@SliderValueLabel(upperLeft, UpperValue?.ToString())
37+
@SliderValueLabel(upperLeft, string.IsNullOrEmpty(UpperLabelText) ? UpperValue?.ToString() : UpperLabelText)
3838
}
3939

4040
<input class="mud-slider-input" aria-valuenow="@Value" aria-valuemin="@_min" aria-valuemax="@_max" role="slider" @attributes="UserAttributes" type="range" min="@_min" max="@_max" step="@_step" disabled="@(Disabled || _userInvalidatedRange || (Range && DisableMin))"
4141
@bind-value="@Text" @bind-value:event="@((Immediate ? "oninput" : "onchange"))" />
4242

43-
@SliderValueLabel(left, Value?.ToString())
43+
@SliderValueLabel(left, string.IsNullOrEmpty(LabelText) ? Value?.ToString() : LabelText)
4444

4545

4646
</div>

CodeBeam.MudBlazor.Extensions/Components/RangeSlider/MudRangeSlider.razor.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,20 @@ public bool Range
4444
set => _range = value;
4545
}
4646

47+
/// <summary>
48+
/// Custom text for ValueLabel
49+
/// </summary>
50+
[Parameter]
51+
[Category(CategoryTypes.Slider.Validation)]
52+
public string? LabelText { get; set; }
53+
54+
/// <summary>
55+
/// Custom text for upper ValueLabel
56+
/// </summary>
57+
[Parameter]
58+
[Category(CategoryTypes.Slider.Validation)]
59+
public string? UpperLabelText { get; set; }
60+
4761
/// <summary>
4862
/// The minimum allowed value of the slider. Should not be equal to max.
4963
/// </summary>

ComponentViewer.Docs/Pages/Examples/RangeSliderExample1.razor

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,22 @@
55
<MudGrid>
66
<MudItem xs="12" sm="8">
77
<MudRangeSlider @bind-Value="@_value" @bind-UpperValue="@_upperValue" Size="Size.Large" Variant="Variant.Filled" ValueLabel="_valueLabel" Range="_range" TickMarks="_tickmarks"
8-
Min="_min" Max="_max" Step="_step" Display="_display" MinDistance="_minDistance" DisableMin="_disableMin" DisableMax="_disableMax">@_label</MudRangeSlider>
8+
Min="_min" Max="_max" Step="_step" Display="_display" MinDistance="_minDistance" DisableMin="_disableMin" DisableMax="_disableMax" LabelText="@_labelText" UpperLabelText="@($"{_upperLabelText} {_upperValue}")">@_label</MudRangeSlider>
99
</MudItem>
1010

1111
<MudItem xs="12" sm="4">
1212
<MudStack>
1313
<MudTextField @bind-Value="_label" Label="Label" Variant="Variant.Outlined" Margin="Margin.Dense" />
14+
<MudTextField @bind-Value="_labelText" Label="Label Text" Variant="Variant.Outlined" Margin="Margin.Dense" />
15+
<MudTextField @bind-Value="_upperLabelText" Label="Upper Label Text" Variant="Variant.Outlined" Margin="Margin.Dense" />
1416
<MudNumericField @bind-Value="_value" Label="Lower Value" Variant="Variant.Outlined" Margin="Margin.Dense" />
1517
<MudNumericField @bind-Value="_upperValue" Label="Upper Value" Variant="Variant.Outlined" Margin="Margin.Dense" />
16-
<MudSwitchM3 @bind-Checked="_valueLabel" Label="ValueLabel" Color="Color.Secondary" />
17-
<MudSwitchM3 @bind-Checked="_range" Label="Range" Color="Color.Secondary" />
18-
<MudSwitchM3 @bind-Checked="_tickmarks" Label="Tickmarks" Color="Color.Secondary" />
19-
<MudSwitchM3 @bind-Checked="_disableMin" Label="DisableMin" Color="Color.Secondary" />
20-
<MudSwitchM3 @bind-Checked="_disableMax" Label="DisableMax" Color="Color.Secondary" />
21-
<MudSwitchM3 @bind-Checked="_display" Label="Display" Color="Color.Secondary" />
18+
<MudSwitchM3 @bind-Value="_valueLabel" Label="ValueLabel" Color="Color.Secondary" />
19+
<MudSwitchM3 @bind-Value="_range" Label="Range" Color="Color.Secondary" />
20+
<MudSwitchM3 @bind-Value="_tickmarks" Label="Tickmarks" Color="Color.Secondary" />
21+
<MudSwitchM3 @bind-Value="_disableMin" Label="DisableMin" Color="Color.Secondary" />
22+
<MudSwitchM3 @bind-Value="_disableMax" Label="DisableMax" Color="Color.Secondary" />
23+
<MudSwitchM3 @bind-Value="_display" Label="Display" Color="Color.Secondary" />
2224
<MudNumericField @bind-Value="_min" Label="Min" Variant="Variant.Outlined" Margin="Margin.Dense" />
2325
<MudNumericField @bind-Value="_max" Label="Max" Variant="Variant.Outlined" Margin="Margin.Dense" />
2426
<MudNumericField @bind-Value="_step" Label="Step" Variant="Variant.Outlined" Margin="Margin.Dense" />
@@ -42,6 +44,8 @@
4244
int _max = 100;
4345
int _step = 1;
4446
int _minDistance = 2;
47+
string _labelText;
48+
string _upperLabelText;
4549

4650
void ClearValues()
4751
{

0 commit comments

Comments
 (0)