2016-02-29 67 views
-1

列表(T)有n列m列: 名字,姓氏,年龄.....VB.NET如何将多字段列表(T)转换为字符串二维数组

我想(的T)的列表转换为字符串的二维数组大小m * n个

+0

为什么你想这样做? –

+0

我有一个列表(客户),我想用iTextSharp将这个列表打印成PDF格式的表格。所以iTextSharp使用字符串单元格,对我来说很简单,只需循环一个数组并逐个单元格地打印。 – Aben

回答

0

我会很高兴,如果我将已经拥有的所有有意义的属性,而不是一个强类型列表一个二维数组。但是,你可能使用反射:

Dim userType As Type = GetType(User) ' User is the type of your class ' 
Dim allPublicProperties = userType.GetProperties(BindingFlags.Instance Or BindingFlags.Public) 
Dim allUserProperties(userList.Count - 1, allPublicProperties.Length - 1) As Object 
For i As Int32 = 0 To userList.Count - 1 ' userList is your List(Of User) ' 
    Dim user = userList(i) 
    For ii As Int32 = 0 To allPublicProperties.Length - 1 
     Dim userProp = allPublicProperties(ii) 
     allUserProperties(i, ii) = userProp.GetValue(user, Nothing) 
    Next 
Next 
+0

谢谢,这非常有帮助!有用! – Aben

相关问题