Asignación de valor a una propiedad mediante Reflection

11/09/2004 - 16:26 por juanvi | Informe spam
Hola amigos, no consigo asignar un valor a una propiedad
utilizando Reflection, mi código es el siguiente:

Assembly assembly = Assembly.LoadFrom("MyAssemblyFile");
Type type = assembly.GetType("MyClass");
PropertyInfo property = type.GetProperty("MyProperty");
MethodInfo method = property.GetSetMethod();
object instance = System.Activator.CreateInstance(type);
method.Invoke(instance, new object[]{"MyValue"});

Al ejecutarlo no se produce ningún error.

¿Por favor alguien puede decirme porque no funciona?
 

Leer las respuestas

#1 Octavio Hernandez
11/09/2004 - 18:24 | Informe spam
JV,

Es más fácil que eso:
Type tipo = textBox2.GetType(); // textBox2 es un TextBox en el formulario

PropertyInfo propiedad = tipo.GetProperty("Text");

propiedad.SetValue(textBox2, "Hola", null); // asigna "Hola" a la propiedad
Text del objeto textBox2

Salu2 - Octavio

"juanvi" escribió en el mensaje
news:084101c4980b$438fb450$
Hola amigos, no consigo asignar un valor a una propiedad
utilizando Reflection, mi código es el siguiente:

Assembly assembly = Assembly.LoadFrom("MyAssemblyFile");
Type type = assembly.GetType("MyClass");
PropertyInfo property = type.GetProperty("MyProperty");
MethodInfo method = property.GetSetMethod();
object instance = System.Activator.CreateInstance(type);
method.Invoke(instance, new object[]{"MyValue"});

Al ejecutarlo no se produce ningún error.

¿Por favor alguien puede decirme porque no funciona?

Preguntas similares