EnvelopeSketchTool envelopeSketchTool; private void btnSelectLayer_Click(object sender, RoutedEventArgs e) { setupSelectTool(); } private void setupSelectTool() { //setup selection layer selectionLayer = new GraphicLayer(); map1.MapGraphicLayers.Add(selectionLayer); selectionLayer.GeometryBag.Add(new ESRI.ArcGIS.Mobile.Geometries.Polygon()); selectionLayer.SelectedGeometry = selectionLayer.GeometryBag[0]; m_lastNavigatioMode = map1.CurrentNavigationMode; map1.CurrentNavigationMode = ESRI.ArcGIS.Mobile.WPF.NavigationMode.None; envelopeSketchTool = new EnvelopeSketchTool(); envelopeSketchTool.AttachToSketchGraphicLayer(selectionLayer); envelopeSketchTool.SketchCompleted += doneSketch; } //public delegate void SelectEnvelopeCompleteEventHandler(object sender, EventArgs e); //public event SelectEnvelopeCompleteEventHandler OnShowBoundary; private void doneSketch(object sender, EventArgs e) { Envelope env = envelopeSketchTool.Envelope; //turn off once selection done if (envelopeSketchTool != null) envelopeSketchTool.DetachFromSketchGraphicLayer(); //now call method to select SelectFeatures(env); }