2010-02-11 31 views
30

Estoy tratando de obtener un valor de una ventana de la siguiente maneraobjeto no coincide con el tipo de objetivo usando C# reflexión

este se refiere a la ventana principal (window1)

Type type = this.GetType(); 
PropertyInfo pi = type.GetProperty("Left"); 
object obj = pi.GetValue(type, null); 

pero me da una "El objeto no coincide con el tipo de destino con el uso" de error. ¿Qué está mal?

Respuesta

50

Porque está tratando de obtener la propiedad "Izquierda" de un Tipo, no su instancia.

tratar este uso

object obj = pi.GetValue(this, null); 
0

este código

object obj = property.GetValue(currentObject, null);

+5

Los bloques de código por sí solos no suelen ser respuestas útiles. Si pudieras por favor editar tu respuesta y explicar qué hace el código que estás mostrando, y por qué/cómo responde ese código a la pregunta, realmente podría ser útil. –

+0

esto funciona cuando tiene una cadena o cualquier tipo no complejo dentro de una propiedad como un valor, debe enviar el objeto actual (Objeto que se utiliza para obtener la propiedad) como un parámetro en lugar de esto – Ramakrishna

Cuestiones relacionadas