public void MoveLeft()
        {
            var parentNode = (AchievementCategoryTreeNode)tvwAchievementCategories.SelectedNode.Parent;

            if (parentNode?.AchievementCategory is null)
            {
                return;
            }

            var selectedCategory = GetSelectedAchievementCategory();

            dataManager.UpdateParent(selectedCategory, selectedCategory.Parent.Parent, selectedCategory.Parent.Location + 1);

            var node = parentNode.Parent;
            TreeNodeCollection nodes = null;

            if (node != null && node.Nodes != null)
            {
                nodes = node.Nodes;
            }
            else
            {
                nodes = tvwAchievementCategories.Nodes;
            }

            nodes.Insert(parentNode.Index + 1, new AchievementCategoryTreeNode(selectedCategory)); // Need to add this to ensure correct location numbers

            var categories = nodes.Cast <AchievementCategoryTreeNode>().Select(x => x.AchievementCategory).ToList();

            dataManager.UpdateLocations(selectedCategory, categories);

            var nextNode = (AchievementCategoryTreeNode)tvwAchievementCategories.SelectedNode.NextNode;

            if (nextNode is not null)
            {
                tvwAchievementCategories.SelectedNode.Remove();
                var prevNode = (AchievementCategoryTreeNode)nextNode.PrevNode;
                if (prevNode?.AchievementCategory is not null)
                {
                    var categories2 = prevNode.Parent.Nodes.Cast <AchievementCategoryTreeNode>().Select(x => x.AchievementCategory).ToList();
                    dataManager.UpdateLocations(prevNode.AchievementCategory, categories2);
                }
                else // removed item was 1st element so we use next element and adjust from a fictional 1st element
                {
                    var categories2 = nextNode.Parent.Nodes.Cast <AchievementCategoryTreeNode>().Select(x => x.AchievementCategory).ToList();
                    dataManager.UpdateLocations(new AchievementCategory(), categories2);
                }
            }

            RefreshTreeView();
        }