I am trying to use the rubberband class. Normally this would be done from a tool on the map, but due to the request this has to be from a menu option and not the tool bar options, When I then use IGeometry geometry = rubberBand.TrackNew(screenDisplay, symbol);
the first point is taken from where the menu was. Is there someway to wait till the user clicks inside the map before starting the rubber band but without using the toolbar control.
If I'm understanding this right then what you're wanting to do is call a custom tool you've already written from a menu instead of a toolbar. When a custom tool is on an ArcMap toolbar, ArcMap handles activating that tool for you when the button is clicked. When you call it from a menu, then you have to handle the activation yourself. If your custom tool is on a toolbar, then all you need to do is call IDocument.CommandBars.Find to get that instance of the tool and set it to be the current tool using IApplication.CurrentTool. If your custom tool is not already on a toolbar then you will need to create a new instance of the tool class, call ICommand.OnCreate and then set it to be the current tool using IApplication.CurrentTool.