我试图在拆分按钮下有一个下拉菜单。其中一些 menuItems 应该有子菜单项。如果您想要一个示例,请单击 Firefox 中的书签按钮(右上角)。
我不能使用菜单,因为它总是水平方向。所以我选择了一个堆栈面板:
<Window x:Class="WpfApplication3.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
Title="MainWindow" Height="350" Width="525">
<Grid>
<xctk:SplitButton Content="SplitButton" BorderThickness="1" BorderBrush="Black" Margin="0,0,408,290">
<xctk:SplitButton.DropDownContent>
<StackPanel Width="161" HorizontalAlignment="Left">
<MenuItem Header="MenuItem1" HorizontalAlignment="Left" Width="517">
<MenuItem.Items>
<MenuItem Header="submenuItem1"/>
<MenuItem Header="submenuItem2"/>
</MenuItem.Items>
</MenuItem>
<MenuItem Header="MenuItem2"/>
<MenuItem Header="MenuItem3"/>
</StackPanel>
</xctk:SplitButton.DropDownContent>
</xctk:SplitButton>
</Grid>
这里的问题是子菜单项不显示。他们甚至没有旁边的小箭头。您可以在没有 SplitButton 的情况下执行此操作,只需留下堆栈面板和其中的所有内容,您就会遇到同样的问题。我尝试将父菜单项放在其自己的标签中,但我希望子菜单项出现在其父项的右侧(就像 firefox 示例:假设您的 firefox 窗口未最大化,并且您已经允许足够的屏幕空间让项目出现)。