Reflection, coger propiedades

return GetAllProperties(type, 
	BindingFlags.Public | 
	BindingFlags.Instance | 
	BindingFlags.SetProperty | 
	BindingFlags.DeclaredOnly, 
	typeof(GraphicsBase)).ToList();

Solamente con esto, ya tienes canela fina. Aunque has de ver que el GetAllProperties es un método que me he sacado del mangote para coger incluso las propiedades de la jerarquía de clases, parando si se encuentra el tipo indicado en el argumento, en el caso que se indique.

private static IEnumerable<PropertyInfo> GetAllProperties(Type currentType, BindingFlags flags, Type ancestorType = null)
{
    var properties = new List<PropertyInfo>(currentType.GetProperties(flags));
    if (currentType.BaseType != null && ancestorType != currentType)
        properties.AddRange(GetAllProperties(currentType.BaseType, flags, ancestorType));
    return properties;
}

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s