private void Cmd_DeleteStation(object sender, ExecutedRoutedEventArgs e) { StationIconElement arriver = (StationIconElement)e.OriginalSource; EllipseGeometry geometry = (EllipseGeometry)arriver.Icon; Point pos = geometry.Center; Thickness ness = GetThickness(pos, NoneList); YesList.Add(ness); NoneList.Remove(ness); Canvas.Children.Remove(arriver); ContextMenuClosed = true; }
private void Cmd_CreateStation(object sender, ExecutedRoutedEventArgs e) { StationIconElement iconElement = new StationIconElement(); EllipseGeometry ellipse = new EllipseGeometry(); ellipse.RadiusX = 7.5; ellipse.RadiusY = 7.5; Path arriver = (Path)e.OriginalSource; EllipseGeometry geometry = (EllipseGeometry)arriver.Data; Point pos = geometry.Center; var str = YesList.Where(n => ((n.Left < pos.X) && (n.Right > pos.X) && (n.Top < pos.Y) && (n.Bottom > pos.Y))); Thickness ness = str.FirstOrDefault(); ellipse.Center = new Point(ness.Left + Step / 2 - 0.25, ness.Top + Step / 2 - 0.25); YesList.Remove(ness); NoneList.Add(ness); iconElement.Icon = ellipse; iconElement.Style = (Style)Application.Current.FindResource("IconStyle"); //DragInCanvasBehavior dragInCanvas = new DragInCanvasBehavior(); //Interaction.GetBehaviors(iconElement).Add(dragInCanvas); Canvas.Children.Add(iconElement); Canvas.SetZIndex(iconElement, 2); }