我正在使用 DataGrid 中的 DataBinding。我有一个视图模型,它有一个名为MyDataSource的 List 类型的属性。Class1 有一个名为MyList的属性,类型为 List。Class2 有一个名为MyProperty的字符串类型的属性。
我的 DataGrid xaml 看起来像。
<DataGrid ItemsSource="{Binding MyDataSource}">
<DataGrid.Columns>
<DataGridTextColumn Header="MyValue" Binding="{Binding Path=MyList[0].MyProperty}"/>
</DataGrid.Columns>
</DataGrid>
在这里,我可以在代码中访问 PropertyPath MyList[0].MyProperty和 MyDataSource。现在我想通过在 GetProperty 方法中传递MyList[0].MyProperty来找出MyProperty的 PropertyType。
我遵循以下链接中描述的方法。但是这里 MyList[0] 的 PropertyInfo 为空。 http://www.java2s.com/Code/CSharp/Reflection/Getsapropertysparentobject.htm
编辑:
我还尝试了以下代码:
PropertyInfo pInfo = MyDataSource.GetType().GetProperty(MyList[0].MyProperty)
但是 pInfo 在这里返回 null 。
有人可以建议我一个解决方案吗?