private void OnChildInserted(object sender, ConfigurationNodeChangedEventArgs args)
        {
            ConfigurationNode     node        = args.Node;
            ConfigurationTreeNode treeNode    = CreateChildNode(node);
            ConfigurationNode     nextSibling = node.NextSibling;

            if (nextSibling != null)
            {
                ConfigurationTreeNode siblingTreeNode = TreeNodeFactory.GetTreeNode(node.NextSibling.Id);
                Nodes.Insert(siblingTreeNode.Index, treeNode);
            }
            else
            {
                Nodes.Add(treeNode);
            }

            treeNode.TreeView.SelectedNode = treeNode;
        }
        /// <devdoc>
        /// Creates a ConfigurationTreeNode using the TreeNodeFactory of the current ConfigurationTreeView.
        /// </devdoc>
        protected ConfigurationTreeNode CreateChildNode(ConfigurationNode node)
        {
            ConfigurationTreeNode treeNode = TreeNodeFactory.Create(node);

            return(treeNode);
        }