首页 > 解决方案 > 找不到 MouseEventArgs

问题描述

我一直在关注创建和使用 ASP.NET Core Razor 组件

我对此部分有疑问

<div class="panel panel-default">
    <div class="panel-heading">@Title</div>
    <div class="panel-body">@ChildContent</div>

    <button class="btn btn-primary" @onclick="OnClick">
        Trigger a Parent component method
    </button>
</div>

@code {
    [Parameter]
    public string Title { get; set; }

    [Parameter]
    public RenderFragment ChildContent { get; set; }

    [Parameter]
    public EventCallback<MouseEventArgs> OnClick { get; set; }
}

我不断收到以下错误

严重性代码描述项目文件行抑制状态错误 CS0246 找不到类型或命名空间名称“MouseEventArgs”(是否缺少 using 指令或程序集引用?) BlazorList D:\Development\BlazorApp1\BlazorList\Pages\ShowListComponent.razor 19 活跃

标签: c#blazor

解决方案


预览 9 中的事件名称已更改

来自博客(https://devblogs.microsoft.com/aspnet/asp-net-core-and-blazor-updates-in-net-core-3-0-preview-9/):

将 Microsoft.AspNetCore.Components.UIEventArgs 替换为 System.EventArgs 并从所有 EventArgs 派生类型(UIChangeEventArgs -> ChangeEventArgs 等)中删除“UI”前缀。

因此,预览 8 及以下版本需要事件名称和 Microsoft.AspNetCore.Components.UIEventArgs 命名空间上的 UI 前缀。

preview 9 不需要事件名称上的 UI 前缀。并且需要命名空间 System.EventArgs


推荐阅读