Blazor 格式化数字的输入类型

Dan*_*nno 2 blazor asp.net-blazor

有人知道如何将数字类型格式化为 100.10 吗?目前,如果该值为 100.10,它将显示为 100.1

尝试了 @bind-value:format with C2, 0:0.##,我是 Blazor 的新手,所以如果有人能指出我正确的方向,我将不胜感激。

<BSBasicInput InputType="InputType.Number" @bind-Value="@Amount" step="0.01" />
Run Code Online (Sandbox Code Playgroud)

Pet*_*ris 5

如果您绑定到 a ,decimal它似乎会保留您为值指定的小数位数,甚至训练零。

@page "/"
<EditForm Model=@Account>
    <InputNumber @bind-Value=Account.Balance/>
    <button>Submit</button>
</EditForm>

@code
{
    BankAccount Account = new BankAccount();

    public class BankAccount
    {
        public decimal Balance { get; set; } = 23.300;
    }
}
Run Code Online (Sandbox Code Playgroud)

对于浮点数和双精度数,我希望以下内容能够工作

<InputNumber @bind-Value=Account.Balance @bind-Value:format="F2"/>
Run Code Online (Sandbox Code Playgroud)

但似乎只有DateTimeDateTimeOffset得到支持,这是一种耻辱。

Blazor University 上有一个示例,展示了如何向下InputBase创建自己的输入控件。实现一个遵循该格式的控件是非常简单的。

https://blazor-university.com/forms/descending-from-inputbase/