是否可以将表单添加到 TreeView?

Posted

技术标签:

【中文标题】是否可以将表单添加到 TreeView?【英文标题】:Is it possible to add a form to a TreeView? 【发布时间】:2020-01-24 17:29:18 【问题描述】:

我想创建一个包含复杂形式的 EmployeeNode 作为节点的 TreeView。当您添加节点时,我将调用InitializeComponent()。这样预期的结果将类似于

或代码方面:

EmployeeNode EMPND = new EmployeeNode(new Employee());
EMPND.Draw();
VisualTree.Nodes.Add(EMPND);

//Draw (at EmployeeNode form class)
public void Draw()

   InitializeComponent();

这可能吗?

编辑

如果这不能使用 TreeView 完成,我很乐意听到其他存储表单的方法,除了 TreeView,它提供了类似的基于层次结构的 WinForm 视觉解决方案(可能是通用版本?)

【问题讨论】:

一个树形视图,您可以添加文本框和列表框等控件。 : treeView1.Controls.Add(textbox1); @jdweng 可以,但是可以添加表格吗? 表单是一个控件。使用 Panel 可能会更好,您可以在其中添加表单等控件并且开销更少。 TreeView 不会与任何不是节点的东西交互,并且表单(或控件)不是节点。根据图像,您应该只创建一个自定义控件。 【参考方案1】:

将要添加的表单的 TopLevel 属性设置为 false。

var form = new Form  TopLevel = false ;
treeView.Controls.Add(form);
form.Show();

【讨论】:

以上是关于是否可以将表单添加到 TreeView?的主要内容,如果未能解决你的问题,请参考以下文章

带有 gtkmm 的 Glade 构建的 TreeView

将.net treeview 嵌入到 vba 中?

如何访问服务器上的 Jquery TreeView?

treeview - 第一个节点出现/显示在根目录下

将数据添加到 QML TreeView

将图像添加到树视图控件 xamarin 表单中