C# присваивает значение свойству объекта с параметрами
У меня есть объект в VBS:
Msgbox myobject.parametro("parm")
Я могу использовать его в C# таким образом:
Object test = myobject.GetType().InvokeMember("parametro",
BindingFlags.GetProperty,
null,
myobject,
new object[] { "parm" });
Messagebox.show(test.toString());
Как я могу в C# присвоить значение свойству?
Например:
myobject.parametro("parm")=725
2 ответа
Я думаю, что вы имеете в виду:
myObject.parametro["parm"] = 627; // set
var test = myObject.parametro["parm"]; // get
Измените BindingFlags на SetProperty
SomeClass c = new SomeClass();
c.GetType().InvokeMember("Prop", BindingFlags.SetProperty, null, c, new object[]{ 1 });