Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/06/2014, 15:37
Avatar de drako_darpan
drako_darpan
 
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 7 meses
Puntos: 58
Respuesta: Ordenar DataGridView por 2 columnas

Disculpa, pero no me dejaba poner el codigo completo, me imagion por tener codigo tipo SQL y por seguridad de la pagina : Va de nuevo

Hola que tal, bueno tratare de explicarte lo mejor que pueda

1.- Declaras una o varias listas ( List<EstructList> alias = new List<EstructList>();) // No entrare en mucho detalle sobre esto )

2.- Llenas la lista con la consulta que ocupas

Inicia lo bueno

3.- Declaras una variable y pones la consulta que ocupas.
Ejemplo:

Código C#:
Ver original
  1. // Consulta sencilla
  2. var Query = (fr om alias in lista_previamente_creada
  3.              o rderby alias.campo_ordenar // Opcional
  4.              sel ect alias).D istinct();
  5.  
  6. // Con un join de listas
  7. var Query = ( fr om alias1 in lista_previamente_creada_1
  8.               j oin alias2 in lista_previamente_creada_2 on alias1.campo_en_comun equals alias2.campo_en_comun
  9.               in to a
  10.               fr om b in a.DefaultIfEmpty(new Estructura_lista_2())
  11.               s elect new
  12.               {
  13.                 alias1.campo1,
  14.                 alias1.campo2,
  15.                 b.campo3,
  16.                 b.campo4
  17.               }
  18.             ).Distinct();

4.- Ya que tienes la información en tu variable ( Query en este caso ), la barres con un foreach.
Ejemplo:

Código C#:
Ver original
  1. foreach (var Mostrar in Query)
  2. {
  3.     Grid.Rows.Add(1);
  4.  
  5.     Grid.Rows[nRenglon].Cells["1"].Value = Mostrar.campo1.ToString();
  6.     Grid.Rows[nRenglon].Cells["2"].Value = Mostrar.campo2.ToString();
  7. }

Ocupas tener en la cabecera el using System.Linq;
Linq solo funciona con Framework 3.5

Espero haberte ayudado
__________________
Your Code as a Crime Scene...