自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#編寫操作TreeView組件剖析

開發(fā) 后端
這里介紹C#編寫操作TreeView組件的例子,在這個例子中,結(jié)合以上介紹的常用方法和一般方法,基本覆蓋來TreeView組件的一些最常用的操作。

C#語言有很多值得學習的地方,這里我們主要介紹C#編寫操作TreeView組件,包括介紹加入子節(jié)點、兄弟節(jié)點、刪除節(jié)點、折疊、展開等操作等方面。

C#編寫操作TreeView組件的例子:

下面是C#編寫操作TreeView組件的例子,在這個例子中,結(jié)合以上介紹的常用方法和一般方法,基本覆蓋來TreeView組件的一些最常用的操作。譬如可以靈活的程序中的TreeView組件中,進行加入子節(jié)點、兄弟節(jié)點、刪除節(jié)點、折疊、展開等操作。其中前三種基本操作是通過程序中彈出菜單中的功能來實現(xiàn)的,后面操作是通過程序中的按鈕來實現(xiàn)的。下面是此程序的代碼節(jié)略(TreeView.cs):

  1. using System ;  
  2. using System.Drawing ;  
  3. using System.Collections ;  
  4. using System.ComponentModel ;  
  5. using System.Windows.Forms ;  
  6. using System.Data ;  
  7. namespace 全面掌握TreeView組件的使用方法  
  8. {  
  9. /// Form1 的摘要說明。  
  10. public class Form1 : Form  
  11. {  
  12. private TreeView treeView1 ;  
  13. private Button button1 ;  
  14. private Button button2 ;  
  15. private Button button3 ;  
  16. private MenuItem menuItem2 ;  
  17. private MenuItem menuItem3 ;  
  18. private MenuItem menuItem4 ;  
  19. private ContextMenu contextMenu1 ;  
  20. private TextBox textBox1 ;  
  21. private Label label1 ;  
  22. /// 必需的設(shè)計器變量。  
  23. private System.ComponentModel.Container components = null ;  
  24. public Form1 ( )  
  25. {  
  26. //初始化窗體中的組件  
  27. InitializeComponent ( ) ;  
  28. }  
  29. /// 清理所有正在使用的資源。  
  30. protected override void Dispose ( bool disposing )  
  31. {  
  32. if ( disposing )  
  33. {  
  34. if ( components != null )  
  35. {  
  36. components.Dispose ( ) ;  
  37. }  
  38. }  
  39. base.Dispose ( disposing ) ;  
  40. }  
  41. private void InitializeComponent ( )  
  42. {  
  43.    //初始化代碼(略)  
  44. }  
  45. [ STAThread ]  
  46. static void Main ( )  
  47. {  
  48. Application.Run ( new Form1 ( ) ) ;  
  49. }  
  50. private void AddChildNode ( )  
  51. {  
  52. //首先判斷是否選定組件中的位置  
  53. if ( treeView1.SelectedNode == null )  
  54. {  
  55. MessageBox.Show ( "請選擇一個節(jié)點" , "提示信息" , 
    MessageBoxButtons.OK , MessageBoxIcon.Information ) ;  
  56. }  
  57. else  
  58. {  
  59. if ( textBox1.Text != "" )  
  60. {  
  61. //創(chuàng)建一個節(jié)點對象,并初始化  
  62. TreeNode tmp ;  
  63. tmp = new TreeNode ( textBox1.Text ) ;  
  64. //在TreeView組件中加入子節(jié)點  
  65. treeView1.SelectedNode.Nodes.Add ( tmp ) ;  
  66. treeView1.SelectedNode = tmp ;  
  67. treeView1.ExpandAll ( ) ;  
  68. }  
  69. else  
  70. {  
  71. MessageBox.Show ( "TextBox組件必須填入節(jié)點名稱!" , "提示信息" , 
    MessageBoxButtons.OK , MessageBoxIcon.Information ) ;  
  72. return ;  
  73. }  
  74. }  
  75. }  
  76. private void AddParent ( )  
  77. {  
  78. //首先判斷是否選定組件中節(jié)點的位置  
  79. if ( treeView1.SelectedNode == null )  
  80. {  
  81. MessageBox.Show ( "請選擇一個節(jié)點" , "提示信息" , 
    MessageBoxButtons.OK , MessageBoxIcon.Information ) ;  
  82. }  
  83. else  
  84. {  
  85. if ( textBox1.Text != "" )  
  86. {  
  87. //創(chuàng)建一個節(jié)點對象,并初始化  
  88. TreeNode tmp ;  
  89. tmp = new TreeNode ( textBox1.Text ) ;  
  90. //在TreeView組件中加入兄弟節(jié)點  
  91. treeView1.SelectedNode.Parent.Nodes.Add ( tmp ) ;  
  92. treeView1.ExpandAll ( ) ;  
  93. }  
  94. else  
  95. {  
  96. MessageBox.Show ( "TextBox組件必須填入節(jié)點名稱!" , "提示信息" , 
    MessageBoxButtons.OK , MessageBoxIcon.Information ) ;  
  97. return ;  
  98. }  
  99. }  
  100. TreeNode tnode = new TreeNode ( textBox1.Text ) ;  
  101. }  
  102. private void treeView1_MouseDown ( object sender , MouseEventArgs e )  
  103. {  
  104. if ( e.Button == MouseButtons.Right )  
  105. contextMenu1.Show ( this , new Point ( e.X , e.Y ) ) ;  
  106. }  
  107. private void button1_Click ( object sender , System.EventArgs e )  
  108. {  
  109. treeView1.SelectedNode.Expand ( ) ;  
  110. }  
  111. private void menuItem2_Click ( object sender , System.EventArgs e )  
  112. {  
  113. AddChildNode ( ) ;  
  114. }  
  115. private void menuItem3_Click ( object sender , System.EventArgs e )  
  116. {  
  117. AddParent ( ) ;  
  118. }  
  119. private void menuItem4_Click ( object sender , System.EventArgs e )  
  120. {  
  121. //判斷選定的節(jié)點是否存在下一級節(jié)點  
  122. if ( treeView1.SelectedNode.Nodes.Count == 0 )  
  123. //刪除節(jié)點  
  124. treeView1.SelectedNode.Remove ( ) ;  
  125. else  
  126. MessageBox.Show ( "請先刪除此節(jié)點中的子節(jié)點!" , "提示信息" , 
    MessageBoxButtons.OK , MessageBoxIcon.Information ) ;  
  127. }  
  128. private void button2_Click ( object sender , System.EventArgs e )  
  129. {  
  130. //定位根節(jié)點  
  131. treeView1treeView1.SelectedNode = treeView1.Nodes [ 0 ] ;  
  132. //展開組件中的所有節(jié)點  
  133. treeView1.SelectedNode.ExpandAll ( ) ;  
  134. }  
  135. private void button3_Click ( object sender , System.EventArgs e )  
  136. {  
  137. //定位根節(jié)點  
  138. treeView1treeView1.SelectedNode = treeView1.Nodes [ 0 ] ;  
  139. //折疊組件中所有節(jié)點  
  140. treeView1.SelectedNode.Collapse ( ) ;  
  141. }  
  142. }  
  143. }  

【編輯推薦】

  1. C#窗體里調(diào)用淺談
  2. C#調(diào)用ListEmployee命令
  3. C# CreateEmployeeDefinition()函數(shù)
  4. C#實現(xiàn)斷點續(xù)傳詳細剖析
  5. C# Employee對象淺談
責任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-08-31 15:34:45

常用操作C# TreeView

2009-08-31 15:27:33

C# TreeView

2009-09-18 10:00:17

C#數(shù)組操作

2009-09-08 16:51:50

C#鼠標拖動

2009-09-07 14:29:52

C# ServiceC

2009-08-27 17:14:36

C# Socket

2024-04-25 08:24:51

C#系統(tǒng)操作日志

2009-09-01 16:29:03

QuickSort C

2009-09-24 14:59:38

C#編寫COM組件

2009-09-01 11:04:59

C#調(diào)用擴展方法

2009-09-11 11:09:36

C#引用類型

2009-09-02 18:14:33

C# WebClien

2009-09-11 11:17:04

C#引用類型

2009-08-27 16:29:18

C#動態(tài)編譯

2009-08-28 16:31:21

C# treeview

2009-08-28 10:44:46

C#字符數(shù)組轉(zhuǎn)換

2009-08-31 17:26:32

C#異常處理

2009-08-27 17:51:34

C#匿名方法

2009-09-03 16:58:49

C#內(nèi)存管理

2009-10-10 14:54:44

treeView1控件
點贊
收藏

51CTO技術(shù)棧公眾號