Skip to content

Commit 5f90f73

Browse files
committed
feat: 增加 PickTimeMode 参数
1 parent bff471b commit 5f90f73

File tree

5 files changed

+19
-27
lines changed

5 files changed

+19
-27
lines changed

src/BootstrapBlazor/Components/DateTimePicker/DatePickerBody.razor

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
<div class="@HeaderLabelString">
4141
<span role="button" class="picker-panel-header-label" @onclick="() => SwitchView(DatePickerViewMode.Year)">@YearString</span>
4242
<span role="button" class="@CurrentMonthViewClassName" @onclick="() => SwitchView(DatePickerViewMode.Month)">@MonthString</span>
43-
@if (IsDateTimeMode && PickTimeMode == DateTimePickerTimeMode.PickTimeByClock)
43+
@if (IsDateTimeMode && PickTimeMode == PickTimeMode.Clock)
4444
{
4545
<span role="button" class="picker-panel-header-label" @onclick="SwitchTimeView">@CurrentTime.ToString(TimeFormat)</span>
4646
}
@@ -165,14 +165,14 @@
165165
</div>
166166
</div>
167167
</div>
168-
@if (IsDateTimeMode && PickTimeMode == DateTimePickerTimeMode.PickTimeByDropdown)
168+
@if (IsDateTimeMode && PickTimeMode == PickTimeMode.Dropdown)
169169
{
170170
<div class="@TimePickerClassString">
171171
<span>@TimePlaceHolder</span>
172172
<input type="text" autocomplete="off" readonly class="form-control"
173173
value="@CurrentTime.ToString(TimeFormat)"
174174
@onclick="@OnShowTimePicker" />
175-
<TimePicker Value="CurrentTime" HasSeconds="HasSeconds()"
175+
<TimePicker Value="CurrentTime" HasSeconds="HasSeconds"
176176
ShowRequired="false" ShowLabel="false" SkipValidate="true"
177177
OnClose="OnCloseTime" OnConfirm="OnConfirmTime"></TimePicker>
178178
</div>

src/BootstrapBlazor/Components/DateTimePicker/DatePickerBody.razor.cs

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -392,10 +392,10 @@ public bool AllowNull
392392
public DayOfWeek FirstDayOfWeek { get; set; } = DayOfWeek.Sunday;
393393

394394
/// <summary>
395-
/// 获得/设置 选择时间方式 默认使用 <see cref="DateTimePickerTimeMode.PickTimeByDropdown"/>
395+
/// 获得/设置 选择时间方式 默认使用 <see cref="PickTimeMode.Dropdown"/>
396396
/// </summary>
397397
[Parameter]
398-
public DateTimePickerTimeMode PickTimeMode { get; set; } = DateTimePickerTimeMode.PickTimeByDropdown;
398+
public PickTimeMode PickTimeMode { get; set; } = PickTimeMode.Dropdown;
399399

400400
[Inject]
401401
[NotNull]
@@ -707,18 +707,12 @@ private async Task OnTimeChanged(TimeSpan time)
707707

708708
private bool _showTimePicker;
709709

710-
private async Task OnConfirmTime(TimeSpan time)
710+
private Task OnConfirmTime(TimeSpan time)
711711
{
712712
_showTimePicker = false;
713713
CurrentTime = time;
714-
if (ShouldConfirm)
715-
{
716-
await ClickConfirmButton();
717-
}
718-
else
719-
{
720-
StateHasChanged();
721-
}
714+
StateHasChanged();
715+
return Task.CompletedTask;
722716
}
723717

724718
private Task OnCloseTime()
@@ -734,15 +728,7 @@ private void OnShowTimePicker()
734728
StateHasChanged();
735729
}
736730

737-
private bool HasSeconds()
738-
{
739-
if (TimeFormat != null)
740-
{
741-
return TimeFormat.Contains('s');
742-
}
743-
744-
return TimePickerOption.ShowSecond;
745-
}
731+
private bool HasSeconds => TimeFormat.Contains('s');
746732

747733
private bool ShouldConfirm => !IsDateTimeMode && (AutoClose || ShowFooter == false);
748734

src/BootstrapBlazor/Components/DateTimePicker/DateTimePicker.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
ShowLunar="ShowLunar" ShowSolarTerm="ShowSolarTerm" ShowFestivals="ShowFestivals" ShowHolidays="ShowHolidays"
2222
OnConfirm="OnConfirm" OnClear="OnClear" MinValue="MinValue" MaxValue="MaxValue"
2323
AutoClose="AutoClose" ViewMode="ViewMode" DayTemplate="DayTemplate!" DayDisabledTemplate="DayDisabledTemplate!"
24-
OnGetDisabledDaysCallback="OnGetDisabledDaysCallback!"
24+
PickTimeMode="PickTimeMode" OnGetDisabledDaysCallback="OnGetDisabledDaysCallback!"
2525
EnableDisabledDaysCache="EnableDisabledDaysCache">
2626
@ChildContent
2727
</DatePickerBody>

src/BootstrapBlazor/Components/DateTimePicker/DateTimePicker.razor.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,12 @@ public string? Format
118118
[Parameter]
119119
public DatePickerViewMode ViewMode { get; set; } = DatePickerViewMode.Date;
120120

121+
/// <summary>
122+
/// 获得/设置 选择时间方式 默认使用 <see cref="PickTimeMode.Dropdown"/>
123+
/// </summary>
124+
[Parameter]
125+
public PickTimeMode PickTimeMode { get; set; } = PickTimeMode.Dropdown;
126+
121127
/// <summary>
122128
/// 获得/设置 是否显示快捷侧边栏 默认不显示
123129
/// </summary>

src/BootstrapBlazor/Components/DateTimePicker/DateTimePickerTimeMode.cs renamed to src/BootstrapBlazor/Components/DateTimePicker/PickTimeMode.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ namespace BootstrapBlazor.Components;
88
/// <summary>
99
/// <see cref="DateTimePicker{TValue}"/> 组件选择时间方式枚举
1010
/// </summary>
11-
public enum DateTimePickerTimeMode
11+
public enum PickTimeMode
1212
{
1313
/// <summary>
1414
/// 使用 Dropdown 下拉方式选择时间
1515
/// </summary>
16-
PickTimeByDropdown,
16+
Dropdown,
1717

1818
/// <summary>
1919
/// 使用 Clock 拖拽指针方式选择时间
2020
/// </summary>
21-
PickTimeByClock
21+
Clock
2222
}

0 commit comments

Comments
 (0)