public bool TryAddElement(string name, SkiaElement element) { int rank; if (!_orderedViewLayerDefinitions.TryGetValue(name, out rank)) { return(false); } UIElementData data = new UIElementData(element, name, rank); int position = 0; while (position < _elements.Count) { UIElementData existing = _elements[position]; if (existing.Rank > rank) { break; } ++position; } Children.Insert(position, element); //var framework = element as FrameworkElement; //if (framework != null) //{ // framework.Width = this.ActualWidth; // framework.Height = this.ActualHeight; //} _elements.Insert(position, data); return(true); }
public UIElementData(SkiaElement element, string name, int rank) { this.Element = element; this.Name = name; this.Rank = rank; }