Buenas, estoy apunto de probocar un suicidio colectivo por culpa de esto.
Cuando asigno una consulta LINQ a un Datagridview, me genera todo bien, pero no permite ordenar haciendo un simple click a la cabecera de la columna.
En MSDN no aclaran nada, dicen que tengo que usar unos interfaces pero no dice ni como ni donde....
Aqui teneis el codigo, para que veis mas o menos lo simple que es....
Código vb:
Ver originalPublic Sub New(ByVal _Entorno As object ByVal empresa As Empresa)
InitializeComponent()
Me._Empresa = empresa
Me._Entorno = _Entorno
Using db As New nasav4(_Entorno.StringConection)
Dim pr_empres = From din_empres In db.din_empres _
Order By din_empres.cod_emp
dgEmpresas.DataSource = pr_empres
dgEmpresas.SelectionMode = Windows.Forms.DataGridViewSelectionMode.FullRowSelect
Me.Dock = Windows.Forms.DockStyle.Fill
End Using
End Sub
Si fuerzo el Ordenado(Sort) me salta esta excepción.
Código vb:
Ver originalNo se controló System.InvalidOperationException
Message="No se puede ordenar un control DataGridView si está enlazado a un IBindingList que no admite la acción de ordenar."
Source="System.Windows.Forms"
StackTrace:
en System.Windows.Forms.DataGridView.SortDataBoundDataGridView_PerformCheck(DataGridViewColumn dataGridViewColumn)
en System.Windows.Forms.DataGridView.SortInternal(IComparer comparer, DataGridViewColumn dataGridViewColumn, ListSortDirection direction)
en System.Windows.Forms.DataGridView.Sort(DataGridViewColumn dataGridViewColumn, ListSortDirection direction)
en lib_empres.Principal.dgEmpresas_ColumnHeaderMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
etc etc etc