Esto probablemente se aplica a otros lugares, pero en WinForms, cuando utilizo el enlace me parece que muchos métodos quieren tomar el nombre de la propiedad para enlazar. Algo así como:¿Hay alguna manera de hacer que la unión de C# funcione de manera estática?
class Person
{
public String Name { get { ... } set { ... } }
public int Age { get { ... } set { ... } }
}
class PersonView
{
void Bind(Person p)
{
nameControl.Bind(p,"Name");
ageControl.Bind(p,"Age");
}
}
El gran problema Sigo teniendo con esto es que "Nombre" y "edad" son representados como cadenas. Esto significa que el compilador no es de ayuda si alguien renombra una de las propiedades de la persona. El código compilará bien, pero las consolidaciones se romperán.
¿Hay alguna manera estándar de solucionar esto que me he perdido? Parece que necesito una palabra clave, tal vez llamada stringof para que coincida con el typeof existente. Se podría utilizar algo como:
ageControl.Bind(p,stringof(p.Age).Name);
stringof podría volver alguna clase que tiene propiedades para obtener la ruta completa, parte de la ruta, o la cadena para que pueda analizarlo usted mismo.
¿Algo como esto ya se puede hacer?
Esto no es C# que se une de forma dinámica que gran parte, esto son WinForms. –
Es cierto. Este tipo de función de idioma puede ser útil, incluso si no está utilizando WinForms. –