Stub code for creating a popup or context menu.
[C#]
/// <summary> /// Member variable for the ToolbarMenu. /// </summary> /// <remarks>This snippet assumes a ToolbarControl has a MapControl, PageLayoutControl GlobeControl /// or SceneControl buddy set.</remarks> public ESRI.ArcGIS.Controls.IToolbarMenu m_ToolbarMenu; /// <summary> /// Create the ToolbarMenu. /// </summary> /// <param name="toolbarControl"></param> /// <remarks> /// Call to create a ToolbarMenu. For example, if a ToolbarControl /// named AxToolbarControl1 exists use the following code: /// CreateToolbarMenu(AxToolbarControl1.Object) /// </remarks> public void CreateToolbarMenu(ESRI.ArcGIS.Controls.IToolbarControl toolbarControl) { // Create a new ToolbarMenu m_ToolbarMenu = new ESRI.ArcGIS.Controls.ToolbarMenuClass(); // Share the ToolbarControl's command pool m_ToolbarMenu.CommandPool = toolbarControl.CommandPool; // Set the hook m_ToolbarMenu.SetHook(toolbarControl.Buddy); // Add commands items to the ToolbarMenu. // Add additional commands based on the mapping control being used // For a listing of the ArcGIS Engine Controls CLSID or ProgID see: ms-help://MS.VSCC.v80/MS.VSIPCC.v80/ESRI.EDNv9.2/NET_Engine/shared/reference/guids_ctrls_cmds.htm m_ToolbarMenu.AddItem("esriControls.ControlsAddDataCommand", -1, -1, false, ESRI.ArcGIS.SystemUI.esriCommandStyles.esriCommandStyleIconOnly); } /// <summary> /// Open the Context Menu popup for the ToolbarMenu. /// </summary> /// <param name="x"></param> /// <param name="y"></param> /// <param name="hWnd"></param> /// <remarks> /// Call to popup the ToolbarMenu on the display of the ToolbarControl's buddy. /// For example, if AxToolbarControl1 is buddied to AxMapControl1 use the following /// code from one of the MapControl's mouse events: /// PopupToolbarMenu(e.x, e.y, AxMapControl1.hWnd) /// </remarks> public void PopupToolbarMenu(System.Int32 x, System.Int32 y, System.Int32 hWnd) { m_ToolbarMenu.PopupMenu(x, y, hWnd); }
[Visual Basic .NET]
''' <summary> ''' Member variable for the ToolbarMenu. ''' </summary> ''' <remarks>This snippet assumes a ToolbarControl has a MapControl, PageLayoutControl GlobeControl ''' or SceneControl buddy set.</remarks> Private m_ToolbarMenu As ESRI.ArcGIS.Controls.IToolbarMenu ''' <summary> ''' Create the ToolbarMenu. ''' </summary> ''' <param name="toolbarControl"></param> ''' <remarks> ''' Call to create a ToolbarMenu. For example, if a ToolbarControl ''' named AxToolbarControl1 exists use the following code: ''' CreateToolbarMenu(AxToolbarControl1.Object) ''' </remarks> Private Sub CreateToolbarMenu(ByVal toolbarControl As ESRI.ArcGIS.Controls.IToolbarControl) ' Create a new ToolbarMenu m_ToolbarMenu = New ESRI.ArcGIS.Controls.ToolbarMenuClass() ' Share the ToolbarControl's command pool m_ToolbarMenu.CommandPool = toolbarControl.CommandPool ' Set the hook m_ToolbarMenu.SetHook(toolbarControl.Buddy) ' Add commands items to the ToolbarMenu. ' Add additional commands based on the mapping control being used ' For a listing of the ArcGIS Engine Controls CLSID or ProgID see: ms-help://MS.VSCC.v80/MS.VSIPCC.v80/ESRI.EDNv9.2/NET_Engine/shared/reference/guids_ctrls_cmds.htm m_ToolbarMenu.AddItem("esriControls.ControlsAddDataCommand", -1, -1, False, ESRI.ArcGIS.SystemUI.esriCommandStyles.esriCommandStyleIconOnly) End Sub ''' <summary> ''' Open the Context Menu popup for the ToolbarMenu. ''' </summary> ''' <param name="x"></param> ''' <param name="y"></param> ''' <param name="hWnd"></param> ''' <remarks> ''' Call to popup the ToolbarMenu on the display of the ToolbarControl's buddy. ''' For example, if AxToolbarControl1 is buddied to AxMapControl1 use the following ''' code from one of the MapControl's mouse events: ''' PopupToolbarMenu(e.x, e.y, AxMapControl1.hWnd) ''' </remarks> Private Sub PopupToolbarMenu(ByVal x As System.Int32, ByVal y As System.Int32, ByVal hWnd As System.Int32) m_ToolbarMenu.PopupMenu(x, y, hWnd) End Sub