Ver Mensaje Individual
  #3 (permalink)  
Antiguo 19/10/2006, 09:29
Stream
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Holaz, te respondo aqui para que si de alguna manera se aprobeche por mas gente la respuesta...
Hize un ejemplisho muy claro creo yo.. espero te sirva...


Código:
            //primero llenamos la columna tipo combo dentro de datagridview
            DataTable tabla = new DataTable("Cant");
            tabla.Columns.Add(new DataColumn("num", typeof(System.Int16)));

            for (int i = 0; i < 100; i++)
            {
                DataRow dr = tabla.NewRow();
                dr["num"] = i;
                tabla.Rows.Add(dr);
            }
//Cantidad es de tipo DataGridViewComboBoxColumn dentro del datagridview
            this.Cantidad.DataSource = tabla;
            this.Cantidad.DisplayMember = "num";
            this.Cantidad.ValueMember = "num";

            //imaginate que ahora nos traemos los datos de la BD, pero yo q hago aqui, has de cuenta que como si ubieramos usado una BD para traenos los datos en la tabla productos

            DataTable productos = new DataTable("Productos");
            productos.Columns.Add(new DataColumn("IdProducto", typeof(System.Int16)));
            productos.Columns.Add(new DataColumn("Nombre", typeof(System.String)));
            productos.Columns.Add(new DataColumn("Cant", typeof(System.Int16)));

            DataRow drp = productos.NewRow();
            drp["IdProducto"] = 15;
            drp["Nombre"] = "Azucar";
            drp["Cant"] = 20;
            productos.Rows.Add(drp);

            drp = productos.NewRow();
            drp["IdProducto"] = 16;
            drp["Nombre"] = "Naranjas";
            drp["Cant"] = 60;
            productos.Rows.Add(drp);

            //ok, ya tenemos los datos en un dataset o datatable
            dataGridView1.AutoGenerateColumns = false;
            this.dataGridView1.DataSource = productos;

  //lo q hace falta poner es rellenar el combo cantidad de data row dentro de datagridview...
            for (int j = 0; j <= this.dataGridView1.Rows.Count-1; j++)
            {
                DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)this.dataGridView1.Rows[j].Cells[1];
                c.Value = productos.Rows[j]["Cant"];
            }
 
y ya....

Espero te sirva.. saludos..