带有多个参数的 Blazor EventCallback - 如何响应父主机控件中的事件

标签 blazor webassembly .net-5

我有一个带有 EventCallBack 参数的 blazor 组件,它利用允许多个参数的新结构格式

[Parameter] public EventCallback<(EmployeeShiftDay, DateTime, DateTime)> NewDayScrolledIntoView { get; set; }
eventcallback 通常在 child 中被调用
await NewDayScrolledIntoView.InvokeAsync(p1, p2, p3);
在我的主机页面中,我有相应的方法来处理调用
private void NewDayInView(EmployeeShiftDay dayInView, DateTime weekStart, DateTime weekEnd)
{
   ...
}
如何在主机组件中为此 EventCallBack 添加标记 - 我当然需要 3 个参数,而不仅仅是一个
<ShiftCardScroller NewDayScrolledIntoView="@((args) => NewDayInView(args))" ></ShiftCardScroller>

最佳答案

您正在调用它解构:

await NewDayScrolledIntoView.InvokeAsync((p1, p2, p3));
当接收到事件时,解构它然后:
<ShiftCardScroller NewDayScrolledIntoView="@((args)=> NewDayInView(args.Item1,args.Item2,args.Item3))" />

关于带有多个参数的 Blazor EventCallback - 如何响应父主机控件中的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65184334/

相关文章:

Blazor,如何触发回车键事件来操作按钮功能?

webassembly - 转换为 WebAssembly 时使用什么语言有关系吗?

c# - Visual Studio 未显示 WSL2 启动配置文件

azure - 使用 postman 进行测试,即使 Azure AD 身份验证正常,也会出现错误 401 未经授权

blazor - 如何在 Blazor 中设置文本区域/输入最大长度

.net - 如何从 appsettings 动态设置 Blazor 中授权 View 标记或属性允许的角色或策略?

entity-framework-core - Blazor Server 组件之间的数据库上下文保持一致

javascript - 使用 webpack 将 Wasm + JS 文件捆绑为一个

authentication - 如何在 Blazor WebAssembly 中实现 OIDC 身份验证?

azure - 多个包与指定模式 : D:\a\r1\a\**\*. zip 匹配。请限制搜索模式