DataGrid y mas datagrid...

27/07/2007 - 11:54 por Nuno Santos | Informe spam
Hola Grupo,
Estas DataGrid's me están dando vueltas la cabeza :), bueno el
problema ahora es que quiero validar una columna del datagrid, es decir,
cuando el user inserir el dado en la columna quiero validar-lo para ver si
está dentro de unos valores, tipo entre 1 y 5, pero de verdad que no logro
hacerlo. cómo se puede hacer? Tengo el evento CurrentCellChanged y consigo
verificar el valor, pero cómo hago para dar el focus à la cell caso el
valor no sea el correcto?



Muchas gracias por vuestra ayuda,

Nuno Santos
 

Leer las respuestas

#1 Luis Miguel Blanco
27/07/2007 - 13:44 | Informe spam
Hola Nuno

Prueba a utilizar el evento CellValidating de este control para realizar las
validaciones que necesites. Te adjunto un bloque de código con un ejemplo.
Disculpa que esté en VB, aunque creo que se puede adaptar sin problemas a C#
8-)

'//////////////////////////////////////////
Private Sub grdDatos_CellValidating(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.DataGridViewCellValidatingEventArgs) _
Handles grdDatos.CellValidating

Dim nNumero As Integer
Dim oDGVC As DataGridViewColumn = Me.grdDatos.Columns(e.ColumnIndex)

If oDGVC.DataPropertyName = "Importe" Then
If e.FormattedValue.ToString().Length > 0 Then
If Not Integer.TryParse(e.FormattedValue, nNumero) Then
MessageBox.Show("Sólo se permiten números")
e.Cancel = True
End If
End If
End If
End Sub
'//////////////////////////////////////////

Espero que te sea de utilidad.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Nuno Santos" wrote:

Hola Grupo,
Estas DataGrid's me están dando vueltas la cabeza :), bueno el
problema ahora es que quiero validar una columna del datagrid, es decir,
cuando el user inserir el dado en la columna quiero validar-lo para ver si
está dentro de unos valores, tipo entre 1 y 5, pero de verdad que no logro
hacerlo. cómo se puede hacer? Tengo el evento CurrentCellChanged y consigo
verificar el valor, pero cómo hago para dar el focus à la cell caso el
valor no sea el correcto?



Muchas gracias por vuestra ayuda,

Nuno Santos



Preguntas similares