none
Como cargar columnas en Datagridview (.Net - C# - Linq to SQL)

    Pregunta

  • Estoy haciendo mis primeros pasos en .Net y C# con Linq, así que sepan disculpar mi ignorancia.

     

    Tengo el siguiente problema

     

    ** En db cargo el datacontext

    db = new Cofasa.Factura.Entidades.TablasDataContext();

     

    **Defino miCliente

    miCliente = new Cofasa.Factura.Entidades.Clientes();

     

    **Busco un Cliente

    miCliente = db.Clientes.SingleOrDefault(x => x.IdCliente == Convert.ToInt32(this.textBox1.Text));

     

    **Bindeo los datos en controles simple como textbox

    textBox2.DataBindings.Clear();

    textBox2.DataBindings.Add("Text", miCliente, "RazonSocial", true);

    textBox6.DataBindings.Clear();

    textBox6.DataBindings.Add("Text", miCliente, "NumeroCliente", true);

     

    ** Y hago lo siguiente para ver miCliente.DocumentosClientes que es una lista con los documentos de los clientes

     

    dataGridView1.DataBindings.Clear();

    dataGridView1.DataSource = miCliente.DocumentosClientes;

     

    Esto me trae todos los campos de DocumentosClientes y yo solo quiero ver Tipo de documento y Número

    Como determino estas columnas en el dataGridView y le cargo los datos correspondientes.

     

    Para complicarla un poco más Tipo de Documento me devuelve un número y yo quiero ver la Descripción del tipo de documento relacionado (eso es otra historia y la podemos ver más adelante)

     

    Desde ya muchas gracias y nuevamente sepan disculpar mi ignorancia

     

    José

     

     

     

    viernes, 11 de julio de 2008 12:13

Respuestas

Todas las respuestas

  • Hola Jose,

    Esto se soluciona muy facil si enlazas en tiempo de diseño, de esa forma tienes control sobre las columnas del DataGridView enlazado

     

    lunes, 21 de julio de 2008 15:00
  • Hola Jose,

     

    como bien dice Pedro.Marquez podrias solucionar tu problema si relacionaras la tabla en la etapa de diseño. Pero dado que estás empezando te recomiendo que te exprimas con la clase DataView. Esta clase te permite, a parte de relacionar los datos con una tabla i después meterlos en el DataGridView, aplicar varios filtros sobre los datos de modo que seleccione las columnas y filas que tu quieras. Su uso es muy intuitivo y de este modo no tienes que modificar la tabla DocumentosClientes cuando quieras visualizar otros campos.

     

    Saludos cordiales,

     

    Jacinto

    martes, 22 de julio de 2008 9:33
  • Jacinto, recuerda que Jose esta usando Linq to SQL, la clase DataView, aplica solo para datasets

     

    martes, 22 de julio de 2008 14:11
  • Gran verdad, Pedro. DataView no se puede aplicar a tablas que no sean DataSets.

     

    Esto pasa por no fijarse...si es que esto de hacerse viejo...

     

    Lo siento Jose, DataView no te va a servir.

     

    Saludos.

     

    martes, 22 de julio de 2008 15:09