我使用反射来获取属性。然后我想更改此属性的值。
对于此示例,我想要获取 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/