如何在 Blazor 中将输入值绑定到对象 属性

How to bind input value to object property in Blazor

我有一个像这样的对象 属性: public object Data { get; set; }

我在 .razor 组件中有一些不同类型的输入:

switch (DataType)
{
    case DataType.Boolean:
        <input @bind="Data" type="checkbox" />
        break;
    case DataType.String:
        <input @bind="Data" type="text" />
        break;
    case DataType.Number:
        <input @bind="Data" type="number" />
        break;
}

结果我得到错误:

如何将这些输入绑定到对象 属性?

我遇到了类似的问题,使用 @onchange 而不是 @bind 解决了它。

switch (DataType)
{
    case DataType.Boolean:
        <input @onchange="@(x => { Data = x; })" type="checkbox" />
        break;
    case DataType.String:
        <input @onchange="@(x => { Data = x; })" type="text" />
        break;
    case DataType.Number:
        <input @onchange="@(x => { Data = x; })" type="number" />
        break;
}