在做一个ACCESS数据库数据合并程序的时候用到的。

这段代码是用来重置combobox数据的,由于有很多combobox,所以就写了个方法来递归。

可以操作其他控件,只要不停的添加if就行。

递归完成条件就是遍历到最后。别看这个好像没有递归终止条件。

其实i < panel.Controls.Count; 就是终止条件啊……

 

 
  
  1. void FindAllCombobox(Panel panel)  
  2.     for (int i = 0; i < panel.Controls.Count; i++) 
  3.     { 
  4.         if (panel.Controls[i] is ComboBox) 
  5.         { 
  6.             (panel.Controls[i] as ComboBox).DataSource = null
  7.             (panel.Controls[i] as ComboBox).DisplayMember = ""
  8.             (panel.Controls[i] as ComboBox).Items.Clear(); 
  9.         } 
  10.         else if(panel.Controls[i] is Panel) 
  11.         { 
  12.             FindAllCombobox(panel.Controls[i] as Panel); 
  13.         } 
  14.     }