public void AddChild(UIView subView, int row = 0, int column = 0, int rowSpan = 1, int columnSpan = 1, bool autoHeight = true, bool autoWidth = true, GridHorizontalAlignment horizontalAlingment = GridHorizontalAlignment.Stretch, GridVerticalAlignment verticalAlingment = GridVerticalAlignment.Stretch, SubViewThickness margin = default(SubViewThickness)) { GridSubViewMeasure subViewMeasure = new GridSubViewMeasure() {Row = row, Column = column, RowSpan = rowSpan, ColumnSpan = columnSpan, AutoWidth = autoWidth, AutoHeight = autoHeight, HorizontalAlignment = horizontalAlingment, VerticalAlignment = verticalAlingment, Margin = margin, Width = subView.Frame.Width, Height = subView.Frame.Height }; __measures.Add(subView, subViewMeasure); RectangleF subViewFrame = this.CalculateMeasure(subViewMeasure); subView.Frame = subViewFrame; this.Add(subView); }
internal static ElementClassSet Class(GridVerticalAlignment alignment) { switch (alignment) { case GridVerticalAlignment.Top: return(topClass); case GridVerticalAlignment.Bottom: return(bottomClass); case GridVerticalAlignment.Center: return(centerClass); case GridVerticalAlignment.Stretch: return(stretchClass); default: return(ElementClassSet.Empty); } }
public void SetVerticalAlignment(UIView subView, GridVerticalAlignment verticalAlignment) { if (!__measures.ContainsKey(subView)) throw new ArgumentException("The SubView is not in the Grid"); __measures[subView].VerticalAlignment = verticalAlignment; this.UpdateInnerChild(subView); }