Analía,

En un caso similar al tuyo (una aplicación para registrar pedidos) me resultó 
más fácil crear un nuevo datagridrow y agregarlo al final de la validación de 
la row actual. O sea, como mi aplicación esta pensada en un data entry que usa 
mas el teclado que el mouse, al detectar la tecla "enter" en el último campo 
del renglón, valido los campos, y si está todo ok creo la nueva fila, sino, 
muestro donde está el error cambiando de color la celda.

Mas que una solución es una idea, espero que te sirva.

Saludos

Jorge.
PD: Si puedo recuperar el código del forms te lo mando.




________________________________
De: Analia <[email protected]>
Para: [email protected]
Enviado: sábado 11 de julio de 2009, 13:30:17
Asunto: [puntonet] Validar datos en datagriview


Hola a todos, estoy un poco enrrollada desarrollando una factura y para cargar 
los items de la misma utilizo un datagridview. Todo me quedo muy lindo pero 
tengo el problema que no se como se puede validar que el usuario no ingrese un 
nuevo  renglon sin que haya completado todos los campos del renglon anterior. 
Detectarlo lo detecto con este codigo:
 
PrivateSub DataGridView1_CellValidating(ByVal sender As Object, ByVal e As 
System.Windows.Forms.DataGridViewCellValidatingEventArgs) Handles 
DataGridView1.CellValidating
  
Ifsender.currentcell.rowindex > 0 Then
    Dim col
       For Each col In sender.columns
        If String.IsNullOrEmpty(sender.rows(sender.currentcell.rowindex - 
1).cells(col.index).value.ToString) Then
              Invalido = True
        Exit Sub
        End If
        Next
      End If
 
Pero despues no se como cancelarlo. Trate de borrar el nuevo renglon con Remove 
, pero me dice que no esta confirmada. Probe con e.cancel=true para cancelar la 
edicion pero no funciona, el renglon sigue estando. 
 
La idea es que si un campo del renglon anterior esta vacio , me borre el nuevo 
renglon y me pare en el campo vacio. Alguen sabe como puedo lograrlo?
 
Muchisimas gracias.   Analia


      
____________________________________________________________________________________
¡Viví la mejor experiencia en la web!
Descargá gratis el nuevo Internet Explorer 8
http://downloads.yahoo.com/ieak8/?l=ar

Responder a