private void MapNodeVm_MouseEnter(object sender, EventArgs e) { var nodeViewModel = (MapNodeVM)sender; var eventArgs = new NodeInteractEventArgs(nodeViewModel); NodeEnter?.Invoke(this, eventArgs); }
private void Worker_ProgressChanged(object sender, ProgressChangedEventArgs e) { if (!(e.UserState is NodeEvent)) { return; } TreeNodeCollection nodes = null; if (CurrentParent != null) { nodes = CurrentParent.Nodes; } else { switch (((NodeEvent)e.UserState).Dest) { case NodeDest.From: nodes = fromTreeView.Nodes; break; case NodeDest.To: nodes = toTreeView.Nodes; break; } } NodeEnter enter = e.UserState as NodeEnter; if (enter != null) { TreeNode child = new TreeNode(enter.Name); if (enter.Sort) { TreeNodeInsertSorted(nodes, child); } else { nodes.Add(child); } CurrentParent = child; } NodeExit exit = e.UserState as NodeExit; if (exit != null) { CurrentParent = CurrentParent.Parent; } NodeData node_data = e.UserState as NodeData; if (node_data != null) { TreeNode child = new TreeNode(node_data.Name); child.Tag = node_data.Object; TreeNodeInsertSorted(nodes, child); } }