|
想得到一个类对象所有的property的信息,用这两种方法都可以吧? 得到的东西可能会有什么不同么? 可能我问的问题本身有误区,希望我想表达的意思可以让大家明白了。 谢谢! |
|
|
求答案!…….
|
|
| 25分 |
TypeDescriptor.GetProperties得到的是属性的数组(可能多个)
反射得到的PropertyInfo,不知道你说的反射是什么,但是你说是PropertyInfo,那显然只是一个属性 |
| 25分 |
也许功能类型,但明显得到的类型都不同。
|
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace IconTest
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
ReflectTest rt = new ReflectTest();
//rt.GetType().GetProperty("ID").SetValue(rt, "Guid", null);
TypeDescriptor.GetProperties(rt)["ID"].SetValue(rt, "Guid");
MessageBox.Show(rt.ID);
}
}
public class ReflectTest
{
private string id;
[ReadOnly(true)]
public string ID
{
get
{
return id;
}
set
{
id = value;
}
}
}
}
对于只读属性TypeDescriptor.GetProperties(rt)[“ID”].SetValue(rt, “Guid”); setvalue失效 |
|