如何将值绑定到 class 属性?
How to bind a value to a class property?
我是 Web 开发的新手,也是 C#/Blazor 的新手。
因此,我正在从事我的一个宠物项目。在这个项目中,我有一个页面,我希望用户在其中输入一些数字。
我想动态地将这些值绑定到 class,然后使用 class 执行计算并动态显示这些结果,以便用户一旦更改输入,无需单击“提交”按钮或类似按钮即可更新结果。因此,基本想法是拥有某种实时计算器。
我正在使用 MudBlazor 框架来加快速度。
这是我位于 Pages/Project.razor
中的起始代码:
<MudItem xs="12" sm="6" md="4">
<MudNumericField @bind-Value="Project.NumDays" Label="Number of days" Variant="Variant.Text" Min="0" Max="10000" />
</MudItem>
@code {
public class Project
{
public string NumDays // property
{ get; set; }
}
}
现在,应用程序声明无法识别项目 class。
我怎样才能达到我想要的?这可能吗 ?或者我需要在 Pages
目录之外定义 Project
class 吗?
您必须实例化项目 class...您不能将 class 定义标识符用作 @bind-Value
指令属性的值。这样做:
Project project = new Project();
您的代码应如下所示:
<MudItem xs="12" sm="6" md="4">
<MudNumericField @bind-Value="project.NumDays" Label="Number of days" Variant="Variant.Text" Min="0" Max="10000" />
</MudItem>
@code {
Project project = new Project();
public class Project
{
public string NumDays { get; set; } // property
}
}
注意Project实例以小写开头p
我是 Web 开发的新手,也是 C#/Blazor 的新手。
因此,我正在从事我的一个宠物项目。在这个项目中,我有一个页面,我希望用户在其中输入一些数字。
我想动态地将这些值绑定到 class,然后使用 class 执行计算并动态显示这些结果,以便用户一旦更改输入,无需单击“提交”按钮或类似按钮即可更新结果。因此,基本想法是拥有某种实时计算器。
我正在使用 MudBlazor 框架来加快速度。
这是我位于 Pages/Project.razor
中的起始代码:
<MudItem xs="12" sm="6" md="4">
<MudNumericField @bind-Value="Project.NumDays" Label="Number of days" Variant="Variant.Text" Min="0" Max="10000" />
</MudItem>
@code {
public class Project
{
public string NumDays // property
{ get; set; }
}
}
现在,应用程序声明无法识别项目 class。
我怎样才能达到我想要的?这可能吗 ?或者我需要在 Pages
目录之外定义 Project
class 吗?
您必须实例化项目 class...您不能将 class 定义标识符用作 @bind-Value
指令属性的值。这样做:
Project project = new Project();
您的代码应如下所示:
<MudItem xs="12" sm="6" md="4">
<MudNumericField @bind-Value="project.NumDays" Label="Number of days" Variant="Variant.Text" Min="0" Max="10000" />
</MudItem>
@code {
Project project = new Project();
public class Project
{
public string NumDays { get; set; } // property
}
}
注意Project实例以小写开头p