public static void SetLayoutElementState(this LayoutElement layoutElement, LayoutElementState state) { if (layoutElement == null) { return; } switch (state) { case LayoutElementState.noLayoutElement: // layoutElement.DestroySmart(); break; case LayoutElementState.layoutPresentIgnoring: layoutElement.ignoreLayout = true; break; case LayoutElementState.layoutPresentStretch: layoutElement.ignoreLayout = false; layoutElement.flexibleHeight = 1; layoutElement.flexibleWidth = 1; break; case LayoutElementState.layoutStrechHorizontal: if (layoutElement.ignoreLayout) { layoutElement.ignoreLayout = false; } layoutElement.FillPreferredHeight(); layoutElement.flexibleHeight = -1; layoutElement.flexibleWidth = 1; break; case LayoutElementState.lyoutStretchVertical: if (layoutElement.ignoreLayout) { layoutElement.ignoreLayout = false; } layoutElement.FillPreferredWidth(); layoutElement.flexibleHeight = 1; layoutElement.flexibleWidth = -1; break; case LayoutElementState.layoutNotFlexible: layoutElement.ignoreLayout = false; layoutElement.FillPreferred(); layoutElement.flexibleHeight = -1; layoutElement.flexibleWidth = -1; break; } }
public static void FillPreferred(this LayoutElement l, bool resetIfDegenerate = true) { l.FillPreferredHeight(resetIfDegenerate); l.FillPreferredWidth(resetIfDegenerate); }