CLR: .Net / Mono / Boo / Otros CLR > C#

 Re: Problema Con Datagridview

(1/2) > >>

NoneTa:
Estoy cargando datos desde una ventana de búsqueda hacia otra ventana que contiene un datagridview.

El datagridview esta vacio y al añadir una fila no tengo problema alguno, pero al añadir la siguiente fila me la crea arriba de la que ya existia !!!

Es decir:
Añadir Primera Vez
        fila 1
Añadir Segunda Vez
        fila 2
        fila 1
Añadir Tercera Vez
        fila 3
        fila 2
        fila 1

Cuando la lógica debería ser
Añadir Primera Vez
        fila 1
Añadir Segunda Vez
        fila 1
        fila 2
Añadir Tercera Vez
        fila 1
        fila 2
        fila 3

Ayuda Please   :lightsabre:

JuanK:
adjunta tu codigo por favor.

NoneTa:
sabes q encontre un faq da datagridview q dice q eso es un comportamiento normal del datagridview... se pueden imaginar eso!!!!

si el usuario agrega una fila desd el datagridview la agrega abajo de la q ya existia, pero si uno como programador la quiere agregar se la pone arriba de la q ya existia...

sinceramente est datagridview apesta... pero como ya no me puedo regresar a .Net 2003 xq ya avanze demasiado en 2005, tengo q ver como lo soluciono

 :angry:

JuanK:
adjunta tu codigo y ya veremos.

NoneTa:
DataGridViewColumn newCol1 = new DataGridViewColumn(newCell);
                newCol1.Name = "CODIGO";
                this.dtg_llenar_pedido.Columns.Add(newCol1);


                DataGridViewColumn newCol2 = new DataGridViewColumn(newCell);
                newCol2.Name = "DESCRIPCION";
                this.dtg_llenar_pedido.Columns.Add(newCol2);

                DataGridViewColumn newCol3 = new DataGridViewColumn(newCell);
                newCol3.Name = "UNIDAD";
                this.dtg_llenar_pedido.Columns.Add(newCol3);

                DataGridViewColumn newCol4 = new DataGridViewColumn(newCell);
                newCol4.Name = "CANTIDAD";
                this.dtg_llenar_pedido.Columns.Add(newCol4);

                this.dtg_llenar_pedido.Rows[0].Cells[0].Value = codigo;
                this.dtg_llenar_pedido.Rows[0].Cells[1].Value = descripcion;
                this.dtg_llenar_pedido.Rows[0].Cells[2].Value = unidad;
                this.dtg_llenar_pedido.Rows[0].Cells[3].Value = cantidad;

Se crean las columnas, agrego las celdas y cargo los datos en las celdas de la fila
codigo, descripcion, unidad, cantidad vienen de otra ventana con datos.

Luego verifico si ya existen datos o una fila en el DGV, para hacer el nuevo ingreso:

DataGridViewRow fila = new DataGridViewRow();

for (int i = 0; i < 3; i++)
                {

                       fila.Cells.Add(new DataGridViewTextBoxCell());

                }

this.dtg_llenar_pedido.Rows.Add(fila);

y ya esta, me la crea pero como si fuera la primera fila y la q era primera pasa a ser segunda... en vez de poner la nueva fila al final.

ya probe con Rows.Insert y me dice q estoy fuera de rango.

Miren esto:

No row can be added after the row for new records (esta es la q el usuario puede crear desd el datagrid). An InvalidOperationException is raised if this is attempted. As a result, the row for new records is always the last row in the DataGridView control.

 :comp:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa