asp.net - 服务器端 Blazor UIMouseEventArgs 事件不起作用
问题描述
我有一个最新版本的服务器端 Blazor 应用程序,但下面的代码假设在单击按钮时切换文本由于某种原因不起作用
@page "/Session12/EventHandleDemo"
<h3>EventHandleDemo</h3>
<button @onclick="@ToggleDisplayText"> Toggle Text </button>
<p>@DisplayText</p>
@code {
private string DisplayText { get; set; } = "Hello!";
private void ToggleDisplayText(UIMouseEventArgs args)
{
DisplayText = (DisplayText.Equals("Hello!"))
? "Hellow world!"
: "Hello!";
}
}
它在以下代码行中显示错误,
private void ToggleDisplayText(UIMouseEventArgs args)
错误UIMouseEventArgs
消息是
我有dotnet --version
3.1.100的最新版本
更新:当我将事件替换UIMouseEventArgs
为MouseEventArgs
. 我必须检查MouseEventArgs
最新版本的 asp.net blazor 是否支持,或者到目前为止我还没有在谷歌上找到任何理由,或者文档可能在我需要深入挖掘的地方提到。
解决方案
正如“dani herrera”所提到的,使用 MouseEventArgs。并删除以方法调用“ToggleDisplayText”为前缀的“@”。
@page "/Session12/EventHandleDemo"
<h3>EventHandleDemo</h3>
<button @onclick="ToggleDisplayText"> Toggle Text </button>
<p>@DisplayText</p>
@code {
private string DisplayText { get; set; } = "Hello!";
private void ToggleDisplayText(MouseEventArgs args)
{
DisplayText = (DisplayText.Equals("Hello!"))
? "Hellow world!"
: "Hello!";
}
}
推荐阅读
- javascript - 仅对 DIV 内的文本应用样式
- c++ - 如何在名称存储在字符串中的外部文件中执行函数并打印文件的内容?
- php - 根据mysql php中的日期时间更新记录
- android - @Inject lateinit 属性尚未初始化 Dagger2
- typescript - 提取泛型接口的属性类型仍然需要不必要的泛型类型
- ios - iOS 中的 Squareup 登录集成
- html - 如何使用css将列表手风琴分成两列并做出反应?
- c# - ApplicationUser 始终为空 ASP.NET CORE 3.0 标识
- base64 - 将 base64 图像字符串编码为 JSON 并使用 jq 将其解码回来
- html - 剑道是否提供像轮播这样的平移图标来平移图表?