private void FlashCommand(object sender, RoutedEventArgs e) { LogLog.Instance.Logger[LogLogEnum.Debug]("TableSearch:FlashCommand"); try { IActiveView av = ArcMap.Document.ActiveView as IActiveView; FeatureModel aFeat = dataGrid1.SelectedItem as FeatureModel; av.ScreenDisplay.UpdateWindow(); IFeatureIdentifyObj featIdentify = new FeatureIdentifyObject(); featIdentify.Feature = aFeat.Feature; IIdentifyObj identify = featIdentify as IIdentifyObj; identify.Flash(av.ScreenDisplay); } catch (Exception ex) { LogLog.Instance.Logger[LogLogEnum.Error](ex.Message); } }
private void AddToSelectionCommand(object sender, RoutedEventArgs e) { LogLog.Instance.Logger[LogLogEnum.Debug]("TableSearch:AddToSelectionCommand"); try { IActiveView av = ArcMap.Document.ActiveView as IActiveView; FeatureModel aFeat = dataGrid1.SelectedItem as FeatureModel; TableHelper th = TableHelper.Instance; ILayer l = th.GetLayerFromFeature(aFeat.Feature); if (!l.Visible) { l.Visible = true; } av.FocusMap.SelectFeature(l, aFeat.Feature); av.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, null, null); } catch (Exception ex) { LogLog.Instance.Logger[LogLogEnum.Error](ex.Message); } }
private void ZoomCommand(object sender, RoutedEventArgs e) { LogLog.Instance.Logger[LogLogEnum.Debug]("TableSearch:ZoomCommand"); try { FeatureModel aFeat = dataGrid1.SelectedItem as FeatureModel; IActiveView av = ArcMap.Document.ActiveView as IActiveView; IGeometry aGeom = aFeat.Feature.Shape as IGeometry; LogLog.Instance.Logger[LogLogEnum.Debug]("Got feat, av and geom"); if (aGeom != null) { if (aGeom.GeometryType == esriGeometryType.esriGeometryPoint) { IPoint pt = aGeom as IPoint; var x = pt.X; var y = pt.Y; var borderAreaDistance = 100; Envelope anEnv = new Envelope { XMin = x - borderAreaDistance, YMin = y - borderAreaDistance, XMax = x + borderAreaDistance, YMax = y + borderAreaDistance }; av.Extent = anEnv as IEnvelope; LogLog.Instance.Logger[LogLogEnum.Debug]("Reset av extent"); } else { av.Extent = aFeat.Feature.Extent; } } TableHelper th = TableHelper.Instance; LogLog.Instance.Logger[LogLogEnum.Debug]($"th:{th.ToString()}"); ILayer l = th.GetLayerFromFeature(aFeat.Feature); LogLog.Instance.Logger[LogLogEnum.Debug]($"Layer:{l.ToString()}"); TOCHelper tch = new TOCHelper(); LogLog.Instance.Logger[LogLogEnum.Debug]($"Toc Helper:{tch.ToString()}"); tch.MakeVisible(l); av.PartialRefresh(esriViewDrawPhase.esriViewAll, null, av.Extent); } catch (Exception ex) { LogLog.Instance.Logger[LogLogEnum.Error](ex.StackTrace.ToString()); LogLog.Instance.Logger[LogLogEnum.Error](ex.Message); } }