【发布时间】:2012-11-02 14:57:39
【问题描述】:
我正在用 C# 和 XAML 编写一个 Windows 8 应用程序。我有一个具有许多相同类型属性的类,它们在构造函数中以相同的方式设置。我不想手动为每个属性编写和分配,我想获取我的类上某种类型的所有属性的列表,并将它们全部设置在一个 foreach 中。
在“普通”.NET 中我会写这个
var properties = this.GetType().GetProperties();
foreach (var property in properties)
{
if (property.PropertyType == typeof(Tuple<string,string>))
property.SetValue(this, j.GetTuple(property.Name));
}
j 是我的构造函数的参数。在 WinRT 中,GetProperties() 不存在。 this.GetType(). 的 Intellisense 没有显示我可以使用的任何有用的东西。
【问题讨论】:
标签: c# reflection microsoft-metro windows-runtime