无法在 Blazorise Blazor 中设置 TimePicker

问题描述 投票:0回答:2

我需要从我的模型中绑定时间选择器初始值。

time picker as addon

是否初始化了TimePicker?时间选择器 = new();

full code

两种方式我都试过了: timePicker = new TimePicker() { Time = appSetting.CashOrderExecutionTime.TimeOfDay };
timePicker.Time = appSetting.CashOrderExecutionTime.TimeOfDay;

我在手表上看到的当前值,时间正在改变,但在前端显示的是 00:00 默认的..或者如果我将 TimeSpan 设置为可为 null 则为 null ...

front-end

是的..我可以从 timePicker.Time 获得更新的值..但是问题出在设定值上。 .. 它总是选择默认

上面提到的代码...

.net blazor timepicker blazorise
2个回答
0
投票

我认为你没有正确地进行双向绑定。使用内置的双向绑定或继承

InputBase

我会使用 HTML5 输入类型

time
与双向绑定配对。这将使您对每个应用程序都有一种原生的感觉。

<input type="time" @bind-value="StartDateTime">

@code
{
     public DateTime StartDateTime { get; set; }
}

如果你想用双向绑定制作一个组件,我建议继承

@inherits InputBase<DateTime>
并将绑定更改为
@bind="CurrentValue"
.


0
投票

永远不要使用

new
初始化 Blazor 组件。这是错误的:

TimePicker? timePicker = new();

而是像这样在页面中添加组件:

<Addon AddonType="AddonType.Body">
    <TimePicker @ref="@timePicker" TValue="TimeSpan?" @bind-Time="@selectedTime" />
</Addon>

@code{
    TimePicker<TimeSpan?> timePicker;

    TimeSpan? selectedTime;
}

文档

© www.soinside.com 2019 - 2024. All rights reserved.