可见但不可选择的XAML菜单项
本文关键字:XAML 菜单项 可选择 | 更新日期: 2023-09-27 18:14:35
所以我对XAML非常陌生,还在学习。我已经遵循了几个关于菜单和菜单项的教程,但我似乎找不到一种方法来添加一些东西到菜单中,而不是让它是可选择的。我试着只添加一个标签,它仍然显示为可选择的。我尝试将isenabled设置为false,它确实变成了灰色,但仍然是可选择的。我试着关掉hit - test,也不管用。我的猜测是,这与设置自定义样式有关,而我对此一无所知。我要回到谷歌,深入研究这个问题,但同时我想在这里发帖,看看是否有人能提供一个好的方向。
编辑:我尝试过的一个简单的例子:
<Menu>
<MenuItem Header="My Menu">
<Label Content="Label1"/> //Selectable even though it's a label. I would Expect a label to not be selectable.
<MenuItem Header="Menu Item 1"/> //Selectable as it should be.
<Separator /> //Not selectable
<MenuItem Header="Menu Item 2"/>
<Label Content="Another Label" IsEnabled="False"/> //Selectable even though it is set to IsEnabled=False.
</MenuItem>
</Menu>
这可能更符合您的要求。我加入了Focusable="False"
和IsHitTestVisible="False"
。注意,我必须将最后一个<Label>
更改为<MenuItem>
,因为Focusable="False"
没有完全做到这一点。
<Menu>
<MenuItem Header="My Menu">
<Label Content="Label1"/>
<MenuItem Header="Menu Item 1" Focusable="False" IsHitTestVisible="False"/>
<Separator />
<MenuItem Header="Menu Item 2"/>
<MenuItem Header="Another Label" IsEnabled="False" Focusable="False" IsHitTestVisible="False"/>
</MenuItem>
</Menu>
看看这篇文章菜单控制教程,如果你使用命令CanExecute方法可以灰色项目,使其不可选择