Deb*_*eep 2 c# reflection list wpfdatagrid c#-4.0
我有一个看起来像这样的代码:
Assembly assembly = Assembly.LoadFrom("ReflectionTest.dll");
Type myType = assembly.GetType(@"ReflectionTest.TestObject");
var x = Convert.ChangeType((object)t, myType);
//List<myType> myList = new List<myType>();
//myList.Add(x);
Run Code Online (Sandbox Code Playgroud)
代码的注释部分是我被卡住的地方。我从服务中获取一些对象并且转换也能正常工作。我正在尝试填充此类对象的列表,稍后将绑定到 WPF DataGrid。
任何帮助表示赞赏!
var listType = typeof(List<>).MakeGenericType(myType)
var list = Activator.CreateInstance(listType);
var addMethod = listType.GetMethod("Add");
addMethod.Invoke(list, new object[] { x });
Run Code Online (Sandbox Code Playgroud)
您也许可以直接转换IList和调用Add,而不是使用反射查找方法:
var list = (IList)Activator.CreateInstance(listType);
list.Add(x);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1352 次 |
| 最近记录: |