c# - 反射 PropertyInfo SetValue C#

标签 c# reflection setvalue propertyinfo

我使用反射来获取属性。然后我想更改此属性的值。

对于此示例,我想要获取 Task 类型的属性,并使用不同的 Task 对象覆盖该属性值。这是我到目前为止的代码。它当前正在获取 Task PropertyInfo,但我不知道要在 SetValue 调用的第一个参数中放入什么内容。

var viewBindingProperty = viewBinding.GetType().GetProperty(typeof(Task).Name);

viewBindingProperty.SetValue(??, pageBinding.Task);

我需要用 pageBinding.Task 覆盖 viewBindingProperty 中的任务属性值

最佳答案

假设viewBinding是你要改变其值的对象

viewBindingProperty.SetValue(viewBinding, pageBinding.Task);

第一个参数采用您想要为其分配新值的对象。

https://msdn.microsoft.com/en-us/library/hh194291(v=vs.110).aspx

关于c# - 反射 PropertyInfo SetValue C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50374060/

相关文章:

c# - 在哪里存储可以在运行时修改的应用程序范围的设置?

c# - 覆盖Windows 8中的证书验证

Scala 反射 : Invoking a Function1's apply method - multiple alternatives?

java - 在通用上下文中使用 getActualTypeArguments

c# - 非静态方法需要 PropertyInfo.SetValue 中的目标

c# - 两个值之间的距离

c# - 如何获取类的对象名称

perl - 打印出匿名子程序的代码

javascript - Greasemonkey 无法执行 GM_setValue()

php - 如何在使用 PHP 调试在 Visual Code 中调试时设置变量值?