获取树节点的右键菜单字典。

命名空间:  SuperMap.UI
程序集:  SuperMap.UI.Controls (in SuperMap.UI.Controls)
版本: dll

语法

C#
public Dictionary<Layer3DsTreeNodeDataType, ContextMenuStrip> NodeContextMenuStrips { get; }

备注

通过 NodeContextMenuStrips 属性可以为三维图层树节点添加右键菜单。右键菜单的指定依赖树节点的类型,如三维图层树中包含了对图层进行分类的图层集合节(如:地形图层集合节点、三维图层集合节点等)、三维图层节点、地形图层节点等不同类型的节点,NodeContextMenuStrips 属性可以为一种类型的树节点指定一个右键菜单,在使用中,当用户右键单击该类型的树节点时,就会弹出所指定的右键菜单。

NodeContextMenuStrips 属性值的类型为字典类,通过字典建立树节点类型与右键菜单的对应关系。字典的关键字为三维图层树节点的类型(Layer3DsTreeNodeDataType 枚举),字典的值为对应树节点类型的右键菜单(ContextMenuStrip 类)。

注:只有通过此接口设置三维图层树节点的右键菜单才有效,通过其他方式添加的右键菜单将不会被触发。

示例

以下代码示范了如何为三维图层树中的三维图层集合节点和三维要素节点添加右键菜单。

下列代码要求在 Form 上创建了一个 Layer3DsTree 实例,实例的名称(name)为:layer3DsTree,并且要求为该 layersTree 对象指定一个场景(Scene 对象)。还要求创建两个 ContextMenuStrip 实例,实例名称(name)分别为:contextMenuStripLayer3Ds 和 contextMenuStripFeature3D;另外,两个上下文菜单(ContextMenuStrip)中已经添加了菜单项。

CopyC#
// 三维图层树节点添加右键菜单函数
private void CreateContextMenuStrip()
{
    // 为三维图层树中的三维图层集合节点指定一个右键菜单
    layer3DsTree.NodeContextMenuStrips[Layer3DsTreeNodeDataType.Layer3Ds] = contextMenuStripLayer3Ds;

    // 为三维图层树中的三维要素节点指定一个右键菜单
    layer3DsTree.NodeContextMenuStrips[Layer3DsTreeNodeDataType.Feature3D] = contextMenuStripFeature3D;
}

// 三维图层集合节点右键菜单中,某个菜单项的功能实现
private void MenuItemAdd_Click(object sender, EventArgs e)
{
    // 实现代码略
}

// 三维要素节点右键菜单中,某个菜单项的功能实现
private void MenuItemProperty_Click(object sender, EventArgs e)
{
    // 实现代码略
}

如下图所示,为三维图层树中的三维图层集合节点和三维要素节点添加右键菜单后的效果图。

请参见