/// <summary> /// Creates Node visual, Border with Textblock /// </summary> /// <param name="x"></param> /// <param name="y"></param> /// <param name="canvas"></param> /// <param name="node"></param> /// <param name="nodeSelected"></param> /// <returns></returns> public Border CreateNode(double x, double y, Canvas canvas, NodeWithVisuals node, MouseButtonEventHandler nodeSelected) { string name = node.label; byte id = node.id; int size = Definitions.Size; var textBlock = new TextBlock { HorizontalAlignment = HorizontalAlignment.Center, Text = name, FontSize = size / 5, }; var border = new Border { Child = textBlock, CornerRadius = new CornerRadius(50), //Margin = new Thickness(10), Padding = new Thickness(0, size / 3, 0, 0), BorderThickness = new Thickness(2), Width = size, Height = size, Background = System.Windows.Media.Brushes.CornflowerBlue, BorderBrush = Brushes.Black, ToolTip = name, Tag = id }; border.MouseLeftButtonDown += nodeSelected; canvas.Children.Add(border); Canvas.SetLeft(border, x); Canvas.SetTop(border, y); Panel.SetZIndex(border, 10); return(border); }