获取树节点的右键菜单字典。
命名空间:
SuperMap.UI程序集: SuperMap.UI.Controls (in SuperMap.UI.Controls)
版本: dll
语法
C# |
---|
public Dictionary<LayersTreeNodeDataType, ContextMenuStrip> NodeContextMenuStrips { get; } |
备注
通过 NodeContextMenuStrips 属性可以为二维图层树节点添加右键菜单。右键菜单的指定依赖树节点的类型,如二维图层树中包含了图层节点、单值专题子项、标签专题子项等专题图子项节点、WMS 子图层节点等不同类型的节点,NodeContextMenuStrips 属性可以为一种类型的树节点指定一个右键菜单,在使用中,当用户右键单击该类型的树节点时,就会弹出所指定的右键菜单。
NodeContextMenuStrips 属性值的类型为字典类,通过字典建立树节点类型与右键菜单的对应关系。字典的关键字为二维图层树节点的类型(LayersTreeNodeDataType 枚举),字典的值为对应树节点类型的右键菜单(ContextMenuStrip 类)。
注:只有通过此接口设置二维图层树节点的右键菜单才有效,通过其他方式添加的右键菜单将不会被触发。
示例
以下代码示范了如何为二维图层树中的图层节点和单值专题子项节点添加右键菜单。
下列代码要求在 Form 上创建了一个 LayersTree 实例,实例的名称(name)为:layersTree,并且要求为该 layersTree 对象指定一个地图(Map 对象)。还要求创建两个 ContextMenuStrip 实例,实例名称(name)分别为:contextMenuStripLayer 和 contextMenuStripThemeItem;另外,两个上下文菜单(ContextMenuStrip)中已经添加了菜单项。
CopyC#
// 二维图层树节点添加右键菜单函数 private void CreateContextMenuStrip() { // 为二维图层树中的图层节点指定一个右键菜单 layersTree.NodeContextMenuStrips[LayersTreeNodeDataType.Layer] = contextMenuStripLayer; // 为二维图层树中的单值专题图子项节点指定一个右键菜单 layersTree.NodeContextMenuStrips[LayersTreeNodeDataType.ThemeUniqueItem] = contextMenuStripThemeItem; } // 图层节点右键菜单中,某个菜单项的功能实现 private void MenuItemRemove_Click(object sender, EventArgs e) { // 实现代码略 } // 单值专题图子项节点右键菜单中,某个菜单项的功能实现 private void MenuItemProperty_Click(object sender, EventArgs e) { // 实现代码略 }
如下图所示,为二维图层树中的图层节点和单值专题图子项节点添加右键菜单后的效果图。