c# - 在div或元素外部单击以在Blazor上将其关闭的事件

标签 c# .net-core blazor razor-pages blazor-server-side

在我的Blazor server-side项目中,我需要通过在菜单外部单击来关闭弹出菜单。
我使用一个简单的If语句通过触发onClick事件来显示/隐藏弹出窗口。但是没有这样的事件可以通过在弹出菜单之外单击来关闭弹出窗口。因此,用户仅应通过单击带有onClick事件的元素来将其关闭。
所以我的问题是,如何在不使用JS的情况下更好地解决此问题?

先感谢您。

最佳答案

这是我使用div触发onfocusout事件的方法,其中if语句使用ShowSelectBox变量显示或隐藏某些内容:

<div tabindex="0" @onfocusout="@(() => ShowSelectBox = false)">
...
</div>

我在出色的webassambly应用程序中使用了此功能,但对于服务器端应该相同。

关于c# - 在div或元素外部单击以在Blazor上将其关闭的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61369498/

相关文章:

c# - 如何在控制台应用程序 .NET Core (C#) 中制作打开文件对话框?

c# - 使用 navlink 时不会触发 Blazor ASP.Net Core(服务器端)中的自定义 URL 重写规则

c# - 泛型通配符或类似的东西

c# - 如何在 C# 中使用 Linq 在 Sql 中进行条件连接?

c# - 如何用 SqlDataReader 获取位值并将其转换为 boolean 值?

c# - .Net Blazor 优于 Angular、React 或其他 javascript 框架

blazor - Blazor RenderTreeBuilder 中的事件

c# - 为什么此 C# 类库项目无法创建 COM 兼容 DLL?

.net-core - .net 核心中的 XSD/架构验证解决方法?

azure - 指定的 .Net Core 2.2 Azure 回复 url 与为应用程序配置的回复 url 不匹配