private void RemoveFromParent(IAbcVisual oldVisualParent) { if (oldVisualParent == null) { return; } WpfVisual wpfVisualParent = (WpfVisual)oldVisualParent; Panel parentPanel = (Panel)wpfVisualParent.uiElement; parentPanel.Children.Remove(this.uiElement); }
private void AddToParent() { IAbcVisual abcVisual = this; IAbcVisual abcVisualParent = abcVisual.VisualParent; if (abcVisualParent == null) { return; } WpfVisual wpfVisualParent = (WpfVisual)abcVisualParent; Panel parentPanel = (Panel)wpfVisualParent.uiElement; parentPanel.Children.Add(this.uiElement); }
internal override void ArrangeOverride(AbcArrangeContext context) { IAbcCanvas abcCanvas = this; foreach (IAbcVisual abcChild in abcCanvas.Children) { AbcContextualPropertyValue arrangeSlotPropertyValue = abcChild.GetContextualPropertyValue(AbcCanvasContextualProperties.ArrangeSlotPropertyKey); context.arrangeSlot = arrangeSlotPropertyValue != null ? ((AbcContextualPropertyValue.AbcRect)arrangeSlotPropertyValue).value : abcCanvas.ArrangeSlot; WpfVisual wpfVisual = (WpfVisual)abcChild; FrameworkElement frameworkElement = (FrameworkElement)wpfVisual.uiElement; SlotPanel.SetSlot(frameworkElement, Utils.ToRect(context.arrangeSlot)); abcChild.Arrange(context); } base.ArrangeOverride(context); }