C# 如何以编程方式关闭MatBlazor MatMenu

C# 如何以编程方式关闭MatBlazor MatMenu,c#,blazor,matblazor,C#,Blazor,Matblazor,我想使用MatBlazor Matmenu组件。 它可以通过“OpenAsync”方法打开,但如何以编程方式关闭它 如图所示,单击按钮时菜单打开,但单击其他位置时不关闭。所以我想从代码中关闭它 编辑:单击页面上的其他位置时,菜单确实会关闭(请参见下面的答案),但我确实在寻找一种从代码关闭它的方法。无需重新编辑 但单击其他位置时不会关闭 但确实如此 它在你的小提琴中似乎不起作用,因为按钮下方的页面只有1像素高。没有什么可点击的 在@code上方添加一些对,然后单击打开菜单的右侧。它将关闭 MatM

我想使用MatBlazor Matmenu组件。 它可以通过“OpenAsync”方法打开,但如何以编程方式关闭它

如图所示,单击按钮时菜单打开,但单击其他位置时不关闭。所以我想从代码中关闭它

编辑:单击页面上的其他位置时,菜单确实会关闭(请参见下面的答案),但我确实在寻找一种从代码关闭它的方法。

无需重新编辑

但单击其他位置时不会关闭

但确实如此

它在你的小提琴中似乎不起作用,因为按钮下方的页面只有1像素高。没有什么可点击的

@code
上方添加一些

对,然后单击打开菜单的右侧。它将关闭


MatMenu有一个
CloseAsync()
方法,该方法应该与打开它相反


不幸的是,MatMenu的文档中没有包含方法列表。

我在BlazorFiddle中尝试了您的建议,但没有成功。除此之外,我真的很想把它从代码中关闭。它在小提琴中为我工作。。。。确实可以尝试,但需要单击示例中菜单旁边的右键。在我的应用程序中,我使用顶部导航栏中的菜单,但当我在屏幕上单击另一个组件时,它不会打开。无论如何,我真的在寻找一个代码解决方案:我想制作一个菜单,当用户移动到UI的另一部分(通过Mouseover事件)时,它会自动打开并再次关闭。我查看了源代码,没有CloseXXX方法。我猜你运气不好。我想是的,但希望有人知道一个办法。无论如何谢谢你!我试图使用你的Blazorfidle,但没用。请更新你的提琴,我来看看。我突然意识到CloseAsync()对OP不可用。