作者plankton ()
看板C_Sharp
标题[问题] Treeview 建立的时候向当掉一样
时间Thu Jun 4 18:53:16 2009
这个问题我卡了很久了.....= =
想请问有没有人知道解决的方法 谢谢
我有一个 winform 上面放了TreeView
当我在建立TreeView的TreeNode 的时候..因为node的数量比较多
所以再建立的时候整个程式就被冻结住了 看起来就像当掉一样
我本来考虑新增 一个Thread 去建立TreeView
但是这样会出现警告..
Action being performed on this control is being called from the wrong thread.
Marshal to the correct thread using Control.Invoke or Control.BeginInvoke to
perform this action.
这个警告 看起来像是因为TreeView 正在 Main Thread里面..
所以这个新增的Thread没办法 去更改TreeViw (不知道我有没有误解他的意思)
如果不能新增一个Thread去 跑TreeView的话
那请问什麽方法
可以让TreeView在建立的时候不会 把整个From都当住
麻烦各位给我建议了
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.19.9
1F:推 horngsh:FAQ了, 你不可以在worker thread去动到UI thread的control 06/04 19:19
2F:→ james732:[问题] Text方法会丢出未知的例外? <--- 可看此串讨论 06/04 19:27
3F:→ Cloud:不要一次读入..等按下展开..再读入相关节点.. 06/04 19:36
4F:→ Cloud:NodeMouseClick 可以参考~~ 06/04 19:36
5F:→ plankton:非常感谢楼上的各位...我解决我目前的问题了! 06/04 20:24
6F:→ plankton:To 1,2F, 关於动到UI的thread的部分..我之前也有试过 06/04 20:26
7F:→ plankton:再把work thread委派给UI thread去执行..但是就是因为 06/04 20:27
8F:→ plankton:又丢回给UI thread所以程式又当当的了..谢谢你们 ^___^ 06/04 20:28
9F:→ plankton:所以我最後采取3F的方法 在click才去add child node 06/04 20:28
10F:→ plankton:这样在使用上就没有当掉了..原来答案这麽简单.. 06/04 20:29
11F:→ plankton:可是我一直想不到 XD 谢谢 06/04 20:29