Blazor 中的程序元素引用

Procedural elements references in Blazor

我正在尝试制作一个任务显示页面,它将每个任务摘要显示到 table 的一行中,如果您单击其中一行,它会展开显示任务的行细节。

因为任务的数量不是静态的,所以我必须使用程序逻辑来显示它们(它只是进入一个for循环,没什么太壮观的。)

但是,由于程序逻辑的原因,我无法在循环中为我的行创建一些静态标识符,我需要知道我在哪一行上单击以了解要展开的内容。

我应该怎么做才能确定我点击的是哪一行?我接受任何解决方案,无论是仅使用 C# 还是通过 JS Interop。

将对象传递给 onclick 事件处理程序

@foreach(var item in items)
{
   <tr @onclick="() => OnRowClicked(item)">
...
   </tr>
}
@code {
   private void OnRowClicked(Item item)
   {
      Expand(item);
   }
}