Es una solucion, segun he leido en MSDN hay una interfaz que en las colecciones de datos no la incorpora. El Datagrid por defecto si lo genera, pero como me pasa en LINQ Entity no.
Pase del tema y me centre en manipulacion de datos, quise dicer, partiendo de la propiedad autogenerate he descubierto que en verdad cuando le añades una coleccion analiza el objeto y genera la columna.
Tal que asi...
Código VB:
Ver original'# # # #
'# Con este sistema, recupero la esturcutra del Objeto del Entity
'# reduciendo el numero de sitios a cambiar, cuando manipule la base de datos
For Each p_obj As PropertyDescriptor In pr_obj
If p_obj.IsBrowsable = True Then
Dim col As New KryptonDataGridViewTextBoxColumn
col.Name = p_obj.Name
col.ValueType = p_obj.PropertyType
'Select col.ValueType.Name
' Case "Decimal"
' Case "Else"
' 'Case "String"
' 'Case "Date"
' 'Case "Datetime"
'End Select
dgEmpresas.Columns.Add(col)
End If
Next
pr_obj = pr_obj
For Each p_empres As din_empres In pr_empres
Dim oArray As New ArrayList
'pr_obj = TypeDescriptor.GetProperties(p_empres, True)
For Each p_obj As PropertyDescriptor In pr_obj
If p_obj.IsBrowsable = True Then
oArray.Add(p_obj.GetValue(p_empres))
End If
Next p_obj
dgEmpresas.Rows.Add(oArray.ToArray)
Next p_empres
'# # #