static void shapeLayer_ShapesLoaded(object sender, ShapesLoadedEventArgs args) { if ((sender as ShapeFileLayer).ShapeCollection.Count > 0) { canvas = VirtualizationViewModel.FindParent <ShapeFilePanel>((sender as ShapeFileLayer).ShapeCollection[0] as UIElement); ShapeFileEventHelper.GetShapeFileEvents(sender as ShapeFileLayer).Execute(canvas); canvas.LayoutUpdated += new EventHandler(canvas_LayoutUpdated); } }
private static void OnShapeFileEventsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { shapeLayer = d as ShapeFileLayer; if (shapeLayer != null) { mainWindow = ShapeFileEventHelper.FindParent <MainWindow>(shapeLayer) as MainWindow; mainWindow.btnReset.Click += new RoutedEventHandler(btnReset_Click); mapControl = ShapeFileEventHelper.FindParent <MapControl>(shapeLayer) as MapControl; shapeLayer.ShapesLoaded += new ShapesLoadedEventHandler(shapeLayer_ShapesLoaded); shapeLayer.ZoomedIn += new ZoomEventHandler(shapeLayer_ZoomedIn); shapeLayer.ZoomedOut += new ZoomEventHandler(shapeLayer_ZoomedOut); shapeLayer.Panning += new PanEventHandler(shapeLayer_Panning); shapeLayer.Panned += new PanEventHandler(shapeLayer_Panned); } }
internal static T FindParent <T>(UIElement control) where T : UIElement { if (control != null) { UIElement p = VisualTreeHelper.GetParent(control) as UIElement; if (p != null) { if (p is T) { return(p as T); } else { return(ShapeFileEventHelper.FindParent <T>(p)); } } } return(null); }
static void shapeLayer_ZoomedIn(object sender, ZoomEventArgs args) { ShapeFileEventHelper.GetShapeFileEvents(sender as ShapeFileLayer).Execute(canvas); }
static void shapeLayer_Panning(object sender, PanEventArgs args) { ShapeFileEventHelper.GetShapeFileEvents(sender as ShapeFileLayer).Execute(canvas); }
static void canvas_LayoutUpdated(object sender, EventArgs e) { ShapeFileEventHelper.GetShapeFileEvents(shapeLayer).Execute(canvas); }