我只想为我动态创建的几个对象添加 ContextMenu,但是
我发现的唯一方法是在运行时创建 ContextMenu,如下所示:
ContextMenu pMenu = new ContextMenu();
MenuItem item1 = new MenuItem();
MenuItem item2 = new MenuItem();
//I have about 10 items
//...
item1.Header = "item1";
item1.Click += new RoutedEventHandler(item1_Click);
pMenu.Items.Add(item1);
item2.Header = "item2";
item2.Click += new RoutedEventHandler(item2_Click);
pMenu.Items.Add(item2);
//and so on
然而,它可以在 WinForms 中工作,我可以将 ContextMenuStrip 组件放到我的表单中,并非常快速地定义项目和事件,而无需编写任何代码。在WPF中可以吗?
您可以定义您的ContextMenu
在资源中并将其绑定到您需要的任何控件。看一下这个:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Window.Resources>
<ContextMenu x:Key="MyContextMenu">
<MenuItem Header="Send" />
</ContextMenu>
</Window.Resources>
<Grid>
<Button Name="a_button"
ContextMenu="{StaticResource MyContextMenu}" >
</Button>
</Grid>
</Window>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)