【发布时间】:2018-04-13 13:17:52
【问题描述】:
我正在尝试创建带有 MenuItem 的菜单,这是可检查的,但看起来像切换按钮。目前,它看起来像这样:
你会同意,这看起来很丑陋,而且复选标记是属于 Views 还是属于 Actions 并不直观。
我知道常规CheckBox 具有属性Appearance,可以设置为Button,使CheckBox 看起来像ToggleButton。但是,MenuItem 对象没有这样的属性。
我也尝试将ToggleButton 添加到菜单中,但它的外观与我的预期不同。这是这次尝试的屏幕截图:
我希望它看起来像这样:
有没有办法在菜单栏中显示工具按钮控件(或类似的东西)?
附:如果你需要我当前的测试代码,这里是:
<Menu Grid.Row="0" HorizontalAlignment="Stretch" IsHitTestVisible="True" x:Name="mnuMain">
<MenuItem Header="File" x:Name="mnuFile">
<MenuItem Header="Export List to Excel" x:Name="btnExportToExcel" Click="OnExportToExcel"/>
</MenuItem>
<MenuItem Header="Views" x:Name="mnuViews">
<MenuItem Header="Item1" x:Name="chkItem1" IsCheckable="true" Click="OnChkItem1Click" />
<MenuItem Header="Item2" x:Name="chkItem2" IsCheckable="true" Click="OnChkItem2Click" />
</MenuItem>
<MenuItem Header="Actions" x:Name="mnuActions" IsCheckable="true" >
<!-- -->
</MenuItem>
<MenuItem Header="Analysis" x:Name="btnAnalysis" Click="OnAnalysisClick"/>
<MenuItem Header="History" x:Name="btnHistory" Click="OnHistoryClick"/>
<ToggleButton x:Name="tbTest" BorderThickness="0" Background="Transparent" HorizontalContentAlignment="Stretch" HorizontalAlignment="Stretch" Click="OnTbTestClick">Test</ToggleButton>
</Menu>
【问题讨论】: