public override void MouseLDoubleClickHandler(object sender, MouseEventArgs e) { Point _mouseDownTemp = e.GetPosition(MainPage.Current.MyCanvas); foreach (var child in MainPage.Current.MyCanvas.Children) { if (child is Node) { Node node = child as Node; if (node.IsPointInNode(_mouseDownTemp)) { currentNode = MainPage.Current.CurrentNode; currentNodeJson = MainPage.Current.nodes[currentNode]; nodeInfow = new NodeInfoWindow(); nodeInfow.SetNodeName(currentNodeJson.name); nodeInfow.SetNodeRole(currentNodeJson.role); nodeInfow.SetNodeUser(currentNodeJson.user); nodeInfow.Show(); nodeInfow.OKButton.Click += new RoutedEventHandler(OKButton_Click); break; } } } }
public override void MouseLDownHandler(object sender, MouseButtonEventArgs e) { Point catchPos = GetCatchPoint(e.GetPosition(MainPage.Current.MyCanvas)); Node node = new Node(); node.Position = new Point(catchPos.X + 1, catchPos.Y + 1); Canvas.SetZIndex(node, 100); MainPage.Current.MyCanvas.Children.Add(node); string name = node.Text; int s = 1; while (MainPage.Current.nodes.Values.ToList().Any(n => n.name == name)) { name = string.Format("{0}{1}", node.Text, s.ToString()); s++; } node.SetText(name); node.ReadyControl(); FlowNodeJsonObject nodeJson = new FlowNodeJsonObject(); nodeJson.name = name; nodeJson.role = string.Empty; nodeJson.user = string.Empty; MainPage.Current.nodes.Add(node, nodeJson); }