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();
}