/// <summary>
        /// Select the specified content ID and make it be aligned at the center
        /// </summary>
        /// <param name="contentID">The target content ID</param>
        public void SelectContentID(int contentID)
        {
            if (_hasNoContent)
            {
                return;
            }

            if (!_listContentManager.IsIDValid(contentID))
            {
                throw new IndexOutOfRangeException(
                          $"{nameof(contentID)} is larger than the number of contents");
            }

            var centeredBox       = _listPositionCtrl.GetCenteredBox();
            var centeredContentID = centeredBox.contentID;

            _listPositionCtrl.SetSelectionMovement(
                _listContentManager.GetShortestDiff(centeredContentID, contentID));
        }