以另一种形式重画表单的树状视图

问题描述 投票:0回答:1

我已经在一个表单中创建了一个树形视图,并且我有另一个表单想要在其中精确地重绘该树形视图。我使用构造函数以第二种形式获取树视图,但是当我显示第二种形式时,未显示树视图。应该注意的是,当我以第一种形式获取标签文本时,可以完全以第二种形式显示标签文本,但是对于树形视图则无法这样做。实际上,我不知道应使用treeview的哪个属性来显示它?您介意帮助我吗?

最佳

c# treeview
1个回答
0
投票

好,您可以将子控件传递给另一个父控件,但要显示该控件,您需要将其添加到控件集合中,还需要更改树视图的Parent属性:

public Form2(TreeView treeView)
    : this() // default constructor calls InitializeComponent();
{
    this.Controls.Add(treeView);
    treeView.Left = 100;
    treeView.Top = 100;
    treeView.Parent = this;
}

并且将显示树视图。

但是您会感到惊讶。

树视图现在已从原始形式消失!!!!

因为这是Windows窗体控件的工作方式。

因此,您需要做的是在第二种形式中拥有自己的TreeView,并复制所有值(节点,按值,而不是按引用),然后以第二种形式重新填充树状视图。

此帖子应提供帮助:

Copy all treeView parent and children to another treeView c# WinForms

© www.soinside.com 2019 - 2024. All rights reserved.