public State(RectTransform rect, ListComponent list, Vector2 anchorMin, Vector2 anchorMax, bool reverse)
            {
                this.rect    = rect;
                this.list    = list;
                this.reverse = reverse;

                this.anchorMin = anchorMin;
                this.anchorMax = anchorMax;
            }
        public override void ValidateEditor()
        {
            base.ValidateEditor();

            if (this.label == null)
            {
                this.label = this.GetComponentInChildren <ButtonComponent>(true);
            }
            if (this.list == null)
            {
                this.list = this.GetComponentInChildren <ListComponent>(true);
            }

            if (this.list != null)
            {
                this.scrollRect = this.list.GetComponent <ScrollRect>();
                if (this.scrollRect == null)
                {
                    return;
                }

                this.drivenRectTransformTracker = new DrivenRectTransformTracker();
                this.drivenRectTransformTracker.Add(this, this.list.rectTransform, DrivenTransformProperties.Anchors | DrivenTransformProperties.Pivot | DrivenTransformProperties.AnchoredPosition);
                if (this.minMaxSizeX.x >= 0f || this.minMaxSizeX.y >= 0f)
                {
                    this.drivenRectTransformTracker.Add(this, this.list.rectTransform, DrivenTransformProperties.SizeDeltaX);
                }
                if (this.minMaxSizeY.x >= 0f || this.minMaxSizeY.y >= 0f)
                {
                    this.drivenRectTransformTracker.Add(this, this.list.rectTransform, DrivenTransformProperties.SizeDeltaY);
                }

                this.list.hiddenByDefault = true;
                this.list.AddEditorParametersRegistry(new EditorParametersRegistry()
                {
                    holder                     = this,
                    hiddenByDefault            = true,
                    hiddenByDefaultDescription = "Value is hold by DropdownComponent"
                });

                this.CalculateAnchorsAndPivot();
                this.ApplyMinMaxSize();
            }
        }