In meiner Blazor-WebAssembly-Anwendung habe ich folgendes versucht zu binden:
<span @oncontextmenu="e => OnContextMenu(e, context.Level, dataItem)"
@oncontextmenu:preventDefault="true">@dataItem.Title</span>
Leider lief das auf folgenden Fehler:
blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
Unhandled exception rendering component: Failed to execute ‚setAttribute‘ on ‚Element‘: ‚@oncontextmenu‘ is not a valid attribute name.
Error: Failed to execute ‚setAttribute‘ on ‚Element‘: ‚@oncontextmenu‘ is not a valid attribute name.
Lösung
In diesem Gitter-Thread habe ich dann die Lösung gefunden:
Ich musste in meiner „_Imports.razor“ noch folgende Zeile ergänzen:
@using Microsoft.AspNetCore.Components.Web
Anschließend konnte ich alle anderen Arten von Events, z. B. @onclick
, die zuvor auch nicht funktioniert hatten, auch erfolgreich binden.