反思PropertyInfo SetValue C#

时间:2018-05-16 14:51:39

标签: c# reflection setvalue propertyinfo

我使用反射来获得一个属性。然后我想改变这个属性的值。

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

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

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

我需要使用viewBindingProperty

覆盖pageBinding.Task中任务属性值的值

1 个答案:

答案 0 :(得分:1)

假设viewBinding是您想要更改

值的对象
viewBindingProperty.SetValue(viewBinding, pageBinding.Task);

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

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