private void MoveToNextElemt(UIDirection direction)
    {
        UINode uiNodeToMoveTo = null;

        switch (direction)
        {
        case UIDirection.Up:
            uiNodeToMoveTo = currentNodeSelected.GetNodeUp();
            break;

        case UIDirection.Down:
            uiNodeToMoveTo = currentNodeSelected.GetNodeDown();
            break;

        case UIDirection.Right:
            uiNodeToMoveTo = currentNodeSelected.GetNodeRight();
            break;

        case UIDirection.Left:
            uiNodeToMoveTo = currentNodeSelected.GetNodeLeft();
            break;
        }

        if (uiNodeToMoveTo == null)
        {
            return;
        }
        this.currentNodeSelected = uiNodeToMoveTo;
    }
    /// <summary>
    /// Gets a ui elementt that is to the right of this ui element
    /// </summary>
    /// <returns></returns>
    public UINode GetNodeRight()
    {
        if (nodeRight == null || uiNodeSearched)
        {
            uiNodeSearched = false;
            return(null);
        }
        uiNodeSearched = true;
        UINode uiNodeToReturn = nodeRight;

        if (!nodeRight.uiNodeActive)
        {
            uiNodeToReturn = nodeRight.GetNodeRight();
        }
        uiNodeSearched = false;

        return(uiNodeToReturn);
    }