c# 动态加载treeview控件,不是节点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 动态加载treeview控件,不是节点相关的知识,希望对你有一定的参考价值。

private void btn_OK_Click(object sender, EventArgs e)

Button mybutton = (Button)sender;
TreeView tv = new TreeView();
tv.Location = new Point(mybutton.Location.X + mybutton.Width, mybutton.Location.Y + mybutton.Height);
//下面是随便定义的节点
TreeNode tn1 = new TreeNode();
tn1.Text = "1";
tv.Nodes.Add(tn1);
TreeNode tn2 = new TreeNode();
tn2.Text = "2";
tn1.Nodes.Add(tn2);
tv.Scrollable = true;
tv.Size = new Size(200, 600);
//这个用于移除,不用管它
tv.MouseLeave += new EventHandler(tv_MouseLeave);

this.Controls.Add(tv);


现在的问题是,点击button后并不显示,但是如果把它改下:tv.Location = new Point(mybutton.Location.X + mybutton.Width+mybutton.Location.Y + mybutton.Height);
就可以显示,但是树只有差不多20的高度,下面的看不到,也没有滚动条,求解释和解决方法,在线等,解决+分。谢谢
补充一下 是winform

楼主看看承载的容器吧。 参考技术A 。。。楼主是否有设置过treeview的size属性(大小)和scrollable属性(是否显示滚动条)呢??
动态添加控件的话要对每一个你需要用到的属性都设置一下的。。。。
location这个属性只是用来控制显示位置的吧。。。
参考技术B

我刚把你的代码复制了一下,做出来的效果是点击按钮后并不是像你说的那样不显示,而是显示的位置有点偏,你可能没注意到

以上是关于c# 动态加载treeview控件,不是节点的主要内容,如果未能解决你的问题,请参考以下文章

C# TreeView 控件的综合使用方法

C#中按钮点击后,treeview控件怎么选中指定节点?

TreeView简单的动态加载数据

c#、winform、treeview 部分节点加图片

使用treeview控件读数据库动态生成带checkbox复选框的树形导航菜单asp.net(C#),急求帮助还可加分

C# winform treeview 怎麼判断是不是包含某个子节点