C# TreeView节点增,删,改(3级节点)

TreeView操作代码:

/// <summary>
/// Treeview添加一级节点
/// TreeV:TreeVie TeamName:一级节点名称
/// </summary>
public static void TreeViewAddTeam(TreeView TreeV, string TeamName)
{

    TreeNode newnode = new TreeNode(TeamName);

    newnode.Name = TeamName;

    newnode.Text = TeamName;

    //newnode.ContextMenuStrip = MenuStripTeam;

    TreeV.Nodes.Add(TeamName);

    TreeV.Nodes[TeamName].Expand();//展开TreeView节点

}

 

/// <summary>
/// Treeview添加二级节点
/// TreeV:TreeVie node1:一级节点名称 newNode:二级节点名称
/// </summary>
public static void TreeViewAddTeam(TreeView TreeV, string node1, string newNode)
{

    ContextMenuStrip MenuStripTeam = new ContextMenuStrip();

    MenuStripTeam.Text = "newNode";

    TreeNode newnode = new TreeNode(newNode);

    newnode.Name = newNode;

    newnode.Text = newNode;

    newnode.ContextMenuStrip = MenuStripTeam;

    TreeV.Nodes[node1].Nodes.Add(newnode);

    TreeV.Nodes[node1].Expand();//展开TreeView节点

}

 

/// <summary>
/// Treeview添加二级节点
/// TreeV:TreeVie  index:一级节点索引 newNode:二级节点名称
/// </summary>
public static void TreeViewAddTeam(TreeView TreeV, int index, string newNode)
{

    ContextMenuStrip MenuStripTeam = new ContextMenuStrip();

    MenuStripTeam.Text = "newNode";

    TreeNode newnode = new TreeNode(newNode);

    newnode.Name = newNode;

    newnode.Text = newNode;

    newnode.ContextMenuStrip = MenuStripTeam;

    TreeV.Nodes[index].Nodes.Add(newnode);

    TreeV.Nodes[index].Expand();//展开TreeView节点

}

 

/// <summary>
/// Treeview在二级节点中添加三级节点
/// index:一级节点索引 node2:二级节点名称 newNode:三级节点名称
/// </summary>
/// <param name="TeamName"></param>
/// <param name="MachineName"></param>
public static void TreeViewAddMachines(TreeView TreeV, int index, string node2, string node3)
{

    TreeNode newnode = new TreeNode(node3);

    newnode.Tag = node3.Clone();

    newnode.Name = node3;

    TreeV.Nodes[index].Nodes[node2].Nodes.Add(newnode);

    TreeV.Nodes[index].Nodes[node2].Expand();

}

 

/// <summary>
/// Treeview在二级节点中添加三级节点
/// node1:一级节点名称 node2:二级节点名称 newNode:三级节点名称
/// </summary>
/// <param name="TeamName"></param>
/// <param name="MachineName"></param>
public static void TreeViewAddMachines(TreeView TreeV, string node1, string node2, string node3)
{

    TreeNode newnode = new TreeNode(node3);

    newnode.Tag = node3.Clone();

    newnode.Name = node3;

    TreeV.Nodes[node1].Nodes[node2].Nodes.Add(newnode);

    TreeV.Nodes[node1].Nodes[node2].Expand();

}

 

/// <summary>
/// Treeview选中一级节点中添加节点
/// TreeV:TreeVie index:一级节点索引 text:节点名称
/// </summary>
/// <param name="newNode"></param>
public static void TreeViewAddNodes(TreeView TreeV, int index, string text)
{

    TreeNode node = new TreeNode(text);

    node.Tag = text.Clone();

    node.Name = text;

    TreeV.Nodes[TreeV.SelectedNode.Name].Nodes.Add(node);

    TreeV.Nodes[index].Expand();//展开tree,TreeName TreeView的节点名称

}

 

/// <summary>
/// Treeview选中一级节点中添加节点
/// TreeV:TreeVie node1:一级节点名称 text:节点名称
/// </summary>
/// <param name="newNode"></param>
public static void TreeViewAddNodes(TreeView TreeV, string node1, string text)
{

    TreeNode node = new TreeNode(text);

    node.Tag = text.Clone();

    node.Name = text;

    TreeV.Nodes[TreeV.SelectedNode.Name].Nodes.Add(node);

    TreeV.Nodes[node1].Expand();//展开tree,TreeName TreeView的节点名称

}

 

/// <summary>
/// 根据索引清除一级节点
/// TreeV:TreeView index:一级节点索引  
/// </summary>
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, int index)
{

    TreeV.Nodes[index].Remove();

}

 

/// <summary>
/// 根据名称清除一级节点
/// TreeV:TreeView node1:一级节点名称  
/// </summary>
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, string node1)
{

    TreeV.Nodes[node1].Remove();

}

 

/// <summary>
/// 根据索引清除二级节点
/// TreeV:TreeView index:一级节点索引    node2:二级节点名称
/// </summary
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, int index, string node2)
{

    TreeV.Nodes[index].Nodes[node2].Remove();

}

 

/// <summary>
/// 根据名称清除二级节点
/// TreeV:TreeView inode1:一级节点名称     node2:二级节点名称
/// </summary>
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, string node1, string node2)
{

    TreeV.Nodes[node1].Nodes[node2].Remove();

}

 

/// <summary>
/// 根据索引清除三级节点
/// TreeV:TreeView index:一级节点索引   node2:二级节点名称  node3:三级节点名称
/// </summary>
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, int index, string node2, string node3)
{

    TreeV.Nodes[index].Nodes[node2].Nodes[node3].Remove();

}

 

/// <summary>
/// 根据名称清除三级节点
/// TreeV:TreeView inode1:一级节点名称   node2:二级节点名称  node3:三级节点名称
/// </summary>
/// <param name="node"></param>
public static void TreeViewDelNode(TreeView TreeV, string node1, string node2, string node3)
{

    TreeV.Nodes[node1].Nodes[node2].Nodes[node3].Remove();

}

 

/// <summary>
/// TreeView删除选中Node
/// </summary>
public static void TreeViewDelNode(TreeView TreeV)
{

    try

    {

        TreeV.Nodes.Remove(TreeV.SelectedNode);

    }

    catch (Exception)

    {

        throw;
    }
 
}

 

/// <summary>
/// Treeview在节点添加子节点组
/// index:一级节点索引  node2:二级节点名称
/// </summary>
public static void TreeViewAddTeam(TreeView TreeV, int index, string node2, TreeNode[] childs)
{

    TreeNode newnode = new TreeNode(node2, childs);

    newnode.Name = node2;

    newnode.Text = node2;

    //newnode.ContextMenuStrip = MenuStripTeam;

    TreeV.Nodes[index].Nodes.Add(newnode);

    TreeV.Nodes[index].Expand();

}

 

/// <summary>
/// Treeview在节点添加子节点组
/// inode1:一级节点名称  node2:二级节点名称
/// </summary>
public static void TreeViewAddTeam(TreeView TreeV, string node1, string node2, TreeNode[] childs)
{

    TreeNode newnode = new TreeNode(node2, childs);

    newnode.Name = node2;

    newnode.Text = node2;

    //newnode.ContextMenuStrip = MenuStripTeam;

    TreeV.Nodes[node1].Nodes.Add(newnode);

    TreeV.Nodes[node1].Expand();

}

 

/// <summary>
/// 更新指定三级节点名称
/// inode1:一级节点名称   node2:二级节点名称  node3:三级节点原名称 newName:三级节点新名称
/// </summary>
/// <param name="parentNode"></param>
/// <param name="node"></param>
public static void TreeViewUpdateNode(TreeView TreeV, string node1,  string node2, string node3, string newName)
{

    TreeV.Nodes[node1].Nodes[node2].Nodes[node3].Remove();

    TreeNode newnode = new TreeNode(newName);

    newnode.Tag = newName.Clone();

    newnode.Name = newName;

    TreeV.Nodes[node1].Nodes[node2].Nodes.Add(newnode);

}

 

/// <summary>
/// 更新指定三级节点名称
/// index:一级节点索引   node2:二级节点名称  node3:三级节点原名称 newName:三级节点新名称
/// </summary>
/// <param name="parentNode"></param>
/// <param name="node"></param>
public static void TreeViewUpdateNode(TreeView TreeV, int index, string node2, string node3, string newName)
{

    TreeV.Nodes[index].Nodes[node2].Nodes[node3].Remove();

    TreeNode newnode = new TreeNode(newName);

    newnode.Tag = newName.Clone();

    newnode.Name = newName;

    TreeV.Nodes[index].Nodes[node2].Nodes.Add(newnode);

}

 

/// <summary>
/// 更新特定二级节点组名称
/// index:一级节点索引   node2:二级节点名称  newName:二级节点新名
/// </summary>
/// <param name="parentNode"></param>
/// <param name="newText"></param>
public static void TreeViewUpdateTeam(TreeView TreeV, int index, string node2, string newName)
{

    int count = TreeV.Nodes[index].Nodes[node2].Nodes.Count;

    TreeNode[] childNodes = new TreeNode[count];

    if (count > 0)

    {

        for (int j = 0; j < count; j++)

        {

            childNodes[j] = new TreeNode();

            childNodes[j].Text = TreeV.Nodes[index].Nodes[node2].Nodes[j].Text;

            childNodes[j].Name = TreeV.Nodes[index].Nodes[node2].Nodes[j].Name;

        }

    }

    TreeV.Nodes[index].Nodes[node2].Remove();

 

    TreeNode newnode = new TreeNode(newName, childNodes);

    newnode.Name = newName;

    TreeV.Nodes[index].Nodes.Add(newnode);

    TreeV.Nodes[index].Expand();

}

 

/// <summary>
/// 更新特定二级节点组名称
/// inode1:一级节点名称    node2:二级节点名称  newName:二级节点新名
/// </summary>
/// <param name="parentNode"></param>
/// <param name="newText"></param>
public static void TreeViewUpdateTeam(TreeView TreeV, string node1, string node2, string newName)
{

    int count = TreeV.Nodes[node1].Nodes[node2].Nodes.Count;

    TreeNode[] childNodes = new TreeNode[count];

    if (count > 0)
    {

        for (int j = 0; j < count; j++)
        {

            childNodes[j] = new TreeNode();

            childNodes[j].Text = TreeV.Nodes[node1].Nodes[node2].Nodes[j].Text;

            childNodes[j].Name = TreeV.Nodes[node1].Nodes[node2].Nodes[j].Name;

        }

    }
    TreeV.Nodes[node1].Nodes[node2].Remove(); 

    TreeNode newnode = new TreeNode(newName, childNodes);

    newnode.Name = newName;

    TreeV.Nodes[node1].Nodes.Add(newnode);

    TreeV.Nodes[node1].Expand();

}

猜你喜欢

转载自blog.csdn.net/lvxingzhe3/article/details/121885053