女人出月经视频播放:C#中Winform的Treeview节点

来源:百度文库 编辑:偶看新闻 时间:2024/04/30 08:51:35

比较简单的做法,增加一个子节点提示.然后开线程请求真实的子节点,完毕后替换提示节点。 

 

代码如下

显示代码打印01 using System; 

02 using System.Collections.Generic; 

03 using System.ComponentModel; 

04 using System.Data; 

05 using System.Drawing; 

06 using System.Text; 

07 using System.Windows.Forms; 

08   

09 namespace WindowsApplication11 

10 { 

11     public partial class Form1 : Form 

12     { 

13   

14         //用于控制线程的方法 

15         public class ThreadStartInfo 

16         { 

17             public TreeNode node=null; 

18   

19             //模拟载入数据 

20             public  void LoadNode() 

21             { 

22                 System.Threading.Thread.Sleep(5000); 

23                 string[] str = new string[] { "jinjazz", "csdn" ,"sina","google","yahoo","nba","fifa"}; 

24                 this.AddNode(node, str); 

25             } 

26             delegate void dAddNode(TreeNode node, string[] str); 

27   

28             //添加节点 

29             void AddNode(TreeNode node, string[] str) 

30             { 

31                 if (this.node.TreeView.FindForm().InvokeRequired) 

32                 { 

33                     this.node.TreeView.FindForm().Invoke(new dAddNode(AddNode), new object[] { node, str }); 

34                 } 

35                 else

36                 { 

37                     node.Nodes.Clear(); 

38                     foreach (string strNode in str) 

39                     { 

40                         node.Nodes.Add(strNode); 

41                     } 

42                 } 

43   

44             } 

45         } 

46   

47         public Form1() 

48         { 

49             InitializeComponent(); 

50         } 

51   

52         private void Form1_Load(object sender, EventArgs e) 

53         { 

54             //添加根节点 

55             this.treeView1.Nodes.Add(new TreeNode("root")); 

56             this.treeView1.AfterSelect += new TreeViewEventHandler(treeView1_AfterSelect); 

57         } 

58   

59         void treeView1_AfterSelect(object sender, TreeViewEventArgs e) 

60         { 

61             if (e.Node.Tag==null||e.Node.Tag.ToString() == "") 

62             { 

63                 ThreadStartInfo s = new ThreadStartInfo(); 

64                 s.node = e.Node; 

65                 //已经载入过的就不要载入了。 

66                 s.node.Tag = 1; 

67                 new System.Threading.Thread(new System.Threading.ThreadStart(s.LoadNode)).Start(); 

68                 e.Node.Nodes.Add("正在载入.."); 

69             } 

70         } 

71     } 

72 }


文章出处:飞诺网(www.diybl.com):http://www.diybl.com/course/4_webprogram/asp.net/netjs/2008530/118205.html