Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/09/2009, 01:24
Avatar de sirurza
sirurza
 
Fecha de Ingreso: julio-2009
Mensajes: 14
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Linq Vs Datagridview.Datasource

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
  1. '# # # #
  2.            '# Con este sistema, recupero la esturcutra del Objeto del Entity
  3.            '# reduciendo el numero de sitios a cambiar, cuando manipule la base de datos
  4.            For Each p_obj As PropertyDescriptor In pr_obj
  5.                 If p_obj.IsBrowsable = True Then
  6.                     Dim col As New KryptonDataGridViewTextBoxColumn
  7.                     col.Name = p_obj.Name
  8.                     col.ValueType = p_obj.PropertyType
  9.                     'Select col.ValueType.Name
  10.                    '    Case "Decimal"
  11.                    '    Case "Else"
  12.                    '        'Case "String"
  13.                    '        'Case "Date"
  14.                    '        'Case "Datetime"
  15.                    'End Select
  16.                    dgEmpresas.Columns.Add(col)
  17.                 End If
  18.             Next
  19.             pr_obj = pr_obj
  20.  
  21.             For Each p_empres As din_empres In pr_empres
  22.                 Dim oArray As New ArrayList
  23.                 'pr_obj = TypeDescriptor.GetProperties(p_empres, True)
  24.                For Each p_obj As PropertyDescriptor In pr_obj
  25.                     If p_obj.IsBrowsable = True Then
  26.                         oArray.Add(p_obj.GetValue(p_empres))
  27.                     End If
  28.                 Next p_obj
  29.  
  30.                 dgEmpresas.Rows.Add(oArray.ToArray)
  31.             Next p_empres
  32.             '# # #