如何使用 blazor <InputDate /> 标签使用当地文化来格式化日期

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

我正在我的 Blazor 应用程序中使用该标签。但是我如何使用我自己的文化来格式化日期?

            <InputDate class="form-control" @bind-Value="@ValidDate" @bind-Value:culture="nl-BE" @bind-Value:format="dd/MM/yyyy" />  

问候 迪特尔

asp.net-core blazor blazor-server-side
3个回答
6
投票

答案是

@bind-Value:format
,就像这样

@page "/"

<EditForm Model="@CurrentPerson">
    <InputDate @bind-Value="@CurrentPerson.DateOfBirth" @bind-Value:format="dd/MM/yyyy"/>
</EditForm>

@code
{
    Person CurrentPerson = new Person();
    public class Person
    {
        public DateTime DateOfBirth { get; set; } = DateTime.Now;
    }
}

还可以选择使用

bind-Value:culture


1
投票

无法设置InputDate

<input type="date">
的格式。这取决于浏览器设置。用户可以更改浏览器的语言。但您无法从 HTML 更改它。如果您确实需要自定义格式,则必须使用InputText
<input type="text">
。我建议使用一些 javascript 库,例如 jQuery UI datepicker


0
投票

该解决方案对我不起作用。我是这样工作的:

@代码{ 仅私人日期? _geboortedatum;

private string GeboortedatumFormatted
{
    get => _geboortedatum?.ToString("dd-MM-yyyy") ?? "";
    set
    {
        if (DateOnly.TryParse(value, out var newDate))
        {
            _geboortedatum = newDate;
        }
    }
} }
地质学 _geboortedatum" class="text-danger" />
© www.soinside.com 2019 - 2024. All rights reserved.