繁体   English   中英

如何将值绑定到 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
    
  }
}

请注意,项目实例以小写p开头

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM