public MarginAdorner(UIEditorGameAdornerService service, UIElement gameSideElement, MarginEdge marginEdge, Graphics.SpriteFont font) : base(service, gameSideElement) { Visual = new Canvas { CanBeHitByUser = false, Name = $"[Margin] {marginEdge}", }; border = new Border(); textBlock = new TextBlock { BackgroundColor = Color.WhiteSmoke * 0.5f, Font = font, DepthAlignment = DepthAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, }; Visual.Children.Add(border); Visual.Children.Add(textBlock); MarginEdge = marginEdge; InitializeAttachedProperties(); }
public static void SetMargin(FrameworkElement ele, MarginEdge edge, double value) { Thickness margin = ele.Margin; switch(edge) { case MarginEdge.Top: margin.Top = value; break; case MarginEdge.Right: margin.Right = value; break; case MarginEdge.Bottom: margin.Bottom = value; break; case MarginEdge.Left: margin.Left = value; break; } ele.Margin = margin; }