WPF如何后台动态添加控件的右键菜单
2015-02-09 11:34
447 查看
右键菜单是很常用的一种功能,能够为用户操作带来不少便捷。那么WPF中应该如何为控件添加右键菜单呢?其实很简单,新手用一次就知道了。
WPF中很多控件都有一个ContextMenu的属性,在添加控件的时候,定义一个ContextMenu菜单控件,然后赋值给控件的ContextMenu属性就可以了。如下:
ContextMenu aMenu = new ContextMenu();
MenuItem deleteMenu = new MenuItem();
deleteMenu.Header = "删除";
deleteMenu.Click += btDel_Click;
aMenu.Items.Add(deleteMenu);
Listview1.ContextMenu = DelMenu;此时右击控件,便会在鼠标点击位置出现菜单。
如果需要在菜单弹出之前做一些判断,或是不同选项弹出的菜单不一样,则可以在控件的右击事件中进行处理。例子如下:
<pre name="code" class="csharp"> private void listView1_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
listviewItem aItem = (listviewItem )sender;
if (aItem.Index==0) //第一行不弹出右键菜单
{
MessageBox.Show("请先选中一行!");
return;
}
ContextMenu aMenu = new ContextMenu();
MenuItem deleteMenu = new MenuItem();
deleteMenu.Header = "删除";
deleteMenu.Click += btDel_Click;
aMenu.Item.Add(deleteMenu);
MenuItem editMenu=new MenuItem();
editMenu.Header="编辑";
editMenu.Click+=btEdit_Click;
aMenu.Items.Add(eidtMenu);
aItem.ContextMenu = DelMenu;
}
WPF中很多控件都有一个ContextMenu的属性,在添加控件的时候,定义一个ContextMenu菜单控件,然后赋值给控件的ContextMenu属性就可以了。如下:
ContextMenu aMenu = new ContextMenu();
MenuItem deleteMenu = new MenuItem();
deleteMenu.Header = "删除";
deleteMenu.Click += btDel_Click;
aMenu.Items.Add(deleteMenu);
Listview1.ContextMenu = DelMenu;此时右击控件,便会在鼠标点击位置出现菜单。
如果需要在菜单弹出之前做一些判断,或是不同选项弹出的菜单不一样,则可以在控件的右击事件中进行处理。例子如下:
<pre name="code" class="csharp"> private void listView1_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
listviewItem aItem = (listviewItem )sender;
if (aItem.Index==0) //第一行不弹出右键菜单
{
MessageBox.Show("请先选中一行!");
return;
}
ContextMenu aMenu = new ContextMenu();
MenuItem deleteMenu = new MenuItem();
deleteMenu.Header = "删除";
deleteMenu.Click += btDel_Click;
aMenu.Item.Add(deleteMenu);
MenuItem editMenu=new MenuItem();
editMenu.Header="编辑";
editMenu.Click+=btEdit_Click;
aMenu.Items.Add(eidtMenu);
aItem.ContextMenu = DelMenu;
}
相关文章推荐
- WPF如何后台动态添加控件的右键菜单
- 如何在控件上添加右键菜单
- wpf中添加右键菜单,后台
- 如何动态添加菜单/菜单项、子菜单、右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单
- 如何在MFC中动态添加菜单/菜单项、子菜单、右键菜单
- WPF中如何添加右键菜单?
- 如何动态添加菜单/菜单项、子菜单、右键菜单
- 如何动态添加菜单/菜单项、子菜单、右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单
- 笔记:如何让wpf中disabled的控件弹出右键菜单
- c#如何仅在datatgirdview控件的头部(列名处)添加右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单 .
- 如何动态添加菜单/菜单项、子菜单、右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单
- MFC中的CMenu---如何动态添加菜单/菜单项、子菜单、右键菜单
- pyqt4,QTableWidget 动态添加控件,添加图片,右键菜单选项
- 如何动态添加菜单/菜单项、子菜单、右键菜单
- 如何动态添加菜单/菜单项、子菜单、右键菜单