[英]Add MahApps.Metro Context Menu programmatically
由于我正在将动态内容加载到StackPanel
我想在每个对象上添加一个ContextMenu
。
现在,我正在使用System.Windows.Controls.ContextMenu
。
不幸的是,菜单看起来像是旧的窗口形式,而不像MahApps的漂亮菜单。
在Internet页面上,我可以找到文档,了解如何在xaml中添加菜单,但是找不到如何通过代码创建菜单。
你有什么想法?
谢谢你的帮助 :)
在MahApps.Metro
查找时,我发现ContextMenu的Style
具有Key MetroContextMenu
键。
因此,您只需在CodeBehind中创建普通的ContextMenu。 您可以将以下Style
添加到您的App.xaml
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!-- MahApps.Metro resource dictionaries. Make sure that all file names are Case Sensitive! -->
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.ContextMenu.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" />
<!-- Accent and AppTheme setting -->
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Green.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<!-- Apply MetroStyle for ContextMenu to ContextMenus in Application scope -->
<Style TargetType="ContextMenu" BasedOn="{StaticResource MetroContextMenu}" />
</Application.Resources>
只有您必须将其应用于ContextMenu
。 MahApps没有提供特殊的ContextMenu
控件(仅是Style
!)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.