通过反射获取类的所有属性和方法

1 private void button1_Click( object sender,EventArgse)
2 {
3Typet=typeof(System.Drawing.Color);
4stringclassName=t.Name;
5MessageBox.Show(className);
6
7//获取所有方法
8System.Reflection.MethodInfo[]methods=t.GetMethods();
9this.textBox1.Text="";
10foreach(System.Reflection.MethodInfomethodinmethods)
11{
12this.textBox1.Text+=method.Name+System.Environment.NewLine;
13}

14
15//获取所有成员
16System.Reflection.MemberInfo[]members=t.GetMembers();
17
18//获取所有属性
19System.Reflection.PropertyInfo[]properties=t.GetProperties();
20foreach(System.Reflection.PropertyInfopropertyinproperties)
21{
22this.lstColors.Items.Add(property.Name);
23}

24}

25
26 private void lstColors_SelectedIndexChanged( object sender,EventArgse)
27 {
28this.pictureBox1.BackColor=System.Drawing.Color.FromName(((ListBox)sender).Text);
29}

30

你可能感兴趣的:(属性和方法)