获取一个树视图的某些行并填充另一个树视图

本文关键字:视图 填充 另一个 一个 获取 | 更新日期: 2023-09-27 18:08:24

如何从TreeView中获得所有子行并将它们填充到c# syncfusion中的另一个TreeView中?

谢谢

获取一个树视图的某些行并填充另一个树视图

如果我已经得到了你的观点,并假设你是从WindowsForms TreeViews复制节点以下代码可能会有所帮助:

    private void Form1_Load(object sender, EventArgs e)
    {
        MoveNodes(treeView1,treeView2,1, 2);
    }
    void AddRootNode(TreeView tree, TreeNode node)
    {
        var newNode = new TreeNode(node.Text);
        tree.Nodes.Add(newNode);
        foreach (TreeNode child in node.Nodes)
            AddChildNode(newNode, child);
    }
    void AddChildNode(TreeNode parent, TreeNode node)
    {
        var newNode = new TreeNode(node.Text);
        parent.Nodes.Add(newNode);
        foreach (TreeNode child in node.Nodes)
            AddChildNode(newNode, child);
    }
    private void MoveNodes(TreeView source,TreeView destination, params int[] indexes)
    {
        foreach (var index in indexes)
        {
            if (index < 0 || index >= source.Nodes.Count)
                continue;
            AddRootNode(destination, source.Nodes[index]);
        }
    }