有事件的吗?如果有可以搞定
 ((Object)sender).Visble=false;

解决方案 »

  1.   

    原理:用hasttable来存储他们的引用; 
    int[] i = new int[] { 0, 1, 1, 1,1 };
                hashtable = new Hashtable();
                int k=0;
                foreach (Control con in Controls)
                {
                    k++;
                    object obj = (object)con;
                    hashtable.Add(k.ToString(),obj);
                }
                for (int j = 0; j < i.Length; j++)
                {
                   object obj = hashtable[j.ToString ()];             
                    if (i[j] == 1)
                    {
                        try
                        {
                            if (obj is Button)
                            {
                                Button btn = (Button)obj;
                                btn.Visible = false;
                            }
                            if (obj is TextBox)
                            {
                                TextBox tb = (TextBox)obj;
                                tb.Visible = false;
                            }//有别的控件时,可以添加
                        }
                        catch(Exception er)
                        {
                            MessageBox.Show(er.Message );
                        }
                    }
                    
                }
            }