C# --> tree view应用

1、使用背景:

通过机型配置测试项目清单,测试项目选择通过tree view实现;

 

2、实现方法:

 获取tree view全部数据:

        private string[] GetAllNodesDataToArray(TreeView treeView)
        {
            List<string> allNodesData = new List<string>();
            // 调用辅助方法遍历 TreeView 的所有节点,并将节点的数据添加到列表中
            TraverseNodes(treeView.Nodes, allNodesData);
            // 将存储数据的列表转换为数组
            return allNodesData.ToArray();
        }

获取tree view选中数据:

        private void CheckNodeSelected(TreeNode node, List<string> selectedNodesData)
        {
            // 如果当前节点被选中
            if (node.Checked)
            {
                // 将选中节点的数据添加到列表中
                selectedNodesData.Add(node.Text);
            }
            // 遍历当前节点的子节点
            foreach (TreeNode childNode in node.Nodes)
            {
                // 递归调用 CheckNodeSelected 方法检查子节点是否被选中,并将选中节点的数据添加到列表中
                CheckNodeSelected(childNode, selectedNodesData);
            }
        }

对比全部数据及选中数据,生成 int 数组,选中数据置 1,未选中数据置 0 :

        private int[] Check(string[] all, string[] exist)
        {
            int[] result = new int[all.Length];
            for (int i =0; i<all.Length; i++)
            {
                bool found = false;
                foreach (string item in exist)
                {
                    if (item == all[i])
                    {
                        result[i] = 1;
                        found = true;
                        break;
                    }
                }
                if (!found)
                {
                    result[i] = 0;
                }
            }
            return result;
            
        }

 

3、实现效果:

选中机型及配置信息,执行数据上传即可,见下图:

 

使用端根据测试功能清单详情进行功能测试;

 

posted @ 2025-01-21 10:14  Oliver9527  阅读(54)  评论(0)    收藏  举报