示例#1
0
        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;
        }
示例#2
0
        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);
        }