protected override void Awake()
        {
            if (this.itemPrototype == null)
            {
                Debug.LogError(RichText.Red(new{ this.name, this.itemPrototype }));
                return;
            }

            base.Awake();

            this.scrollRect   = this.GetComponent <ScrollRect>();
            this.viewportRect = this.scrollRect.viewport;
            this.contentRect  = this.scrollRect.content;
        }