我想在 WPF 中制作一些自定义 MenuHeaders,以便我可以(例如)在菜单项中拥有一个图标和文本。
通常使用 MenuItems,如果您使用纯文本填充 Header 字段,您可以使用下划线添加加速器。例如,_File
但是,如果我想放入一个 UserControl,我相信这个功能会中断,我将如何做类似以下的事情?
<Menu>
<MenuItem>
<MenuItem.Header>
<UserControl>
<Image Source="..." />
<Label Text="_Open" />
</UserControl>
</MenuItem.Header>
</MenuItem>
...
最佳答案
我认为 Icon 属性符合您的需求。
但是,要回答最初的问题,可以在编写菜单项的内容时保留 Accelerator 功能。 如果您在 MenuItem 中嵌套了内容,则需要像下面的第一个一样显式定义 AccessText 属性 。当您使用内联表单时,这会自动处理。
<Menu>
<MenuItem>
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<Image Source="Images/Open.ico" />
<AccessText>_Open..</AccessText>
</StackPanel>
</MenuItem.Header>
</MenuItem>
<MenuItem Header="_Close" />
</Menu>
关于wpf - 如何使用加速器在 WPF 中制作自定义 MenuHeaders?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59456/