1.遍历枚举类型
补:typeof()方法中只能传具体的类名、类型名称(int32...),不可以是变量名称。类似的方法有GetType(),GteType()方法继承自object,所以c#中任何对象都具有GteType()方法,它和typeof()的作用相同,返回当前对象的类型。
1 StringBuilder sb = new StringBuilder(); 2 //遍历枚举类型的各个枚举名称 3 foreach (string item in Enum.GetNames(typeof(PeopleType))) 4 { 5 sb.AppendFormat("{0}", item); 6 sb.AppendLine(); 7 } 8 MessageBox.Show(sb.ToString()); 9 //遍历枚举类型的各个枚举值 10 foreach (int item in Enum.GetValues(typeof(PeopleType))) 11 { 12 sb.AppendFormat("{0}", item); 13 sb.AppendLine(); 14 } 15 MessageBox.Show(sb.ToString()); 16 17 18 //定义在命名空间中 19 public enum PeopleType 20 { 21 Chinese, 22 English, 23 Japan 24 }
2.遍历ArrayList(Queue、Stack)
1 //创建数据集 2 ArrayList al = new ArrayList() { "张三","李四","王五","赵六"}; 3 4 //创建容器 5 StringBuilder sb = new StringBuilder(); 6 foreach (var item in al) 7 { 8 sb.AppendFormat("{0}",item); 9 sb.AppendLine(); 10 } 11 MessageBox.Show(sb.ToString());
3.遍历windows窗体中的控件
1 //遍历寻找主窗体中的控件,并将符合条件的控件从窗体上去除 2 foreach (Control ctl in this.Controls) 3 { 4 //获取并判断控件类型或控件名称 5 if (ctl.GetType().Name.Equals("ListBox") || ctl.Name.Equals("listBox1")) 6 this.Controls.Remove(ctl); 7 }