Ayuda con el masked box .net

Experto yo preguntando siempre, espero no se moleste.
Veras ando liado con el masked box el problema aquí te pego el código que desarrolle
Private Sub mbHora_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles mbHora.TextChanged
If Not Me.mbHora.Text = " :" Then
If CInt(Me.mbHora.Text.Substring(0, 1)) >= 3 Then
Me.mbHora.Text = "0" + Me.mbHora.Text.Substring(0, 1) + "00"
End If
If CInt(Me.mbHora.Text.Substring(0, 2)) > 24 Then
Me.mbHora.Text = ""
End If
End If
If Me.mbHora.Text = " :" Then
Else
If Me.mbHora.Text.Substring(0, 2) > 12 Then
Me.lblHora.Text = "P.M"
Me.lblHora.Visible = True
Else
Me.lblHora.Visible = True
Me.lblHora.Text = "A.M"
End If
End If
/*******************el problema en esta parte del codigo******/
Dim x As Integer
x = Me.mbHora.Text.Length
If Not Me.mbHora.Text.Substring(3, 3) = " :" Then
If CInt(Me.mbHora.Text.Substring(3, 2)) > 59 Then
Me.mbHora.Text = "Me.mbHora.Text.Substring(0, 2)" + "00"
End If
/*******************el problema en esta parte del codigo******/
End If
End Sub
Me sale error: El índice y la longitud deben hacer referencia a una ubicación en la cadena. Nombre del parámetro: length
No puedo establecer la longitud o sacar el texto de una posición espero me puedas ayudar-

1 Respuesta

Respuesta
No indicas en que linea de todo ese código sale el error
/*******************el problema en esta parte del codigo******/
Dim x As Integer
x = Me.mbHora.Text.Length
If Not Me.mbHora.Text.Substring(3, 3) = " :" Then
If CInt(Me.mbHora.Text.Substring(3, 2)) > 59 Then
Me.mbHora.Text = "Me.mbHora.Text.Substring(0, 2)" + "00"
End If
/*******************el problema en esta parte del codigo******/
If Not Me.mbHora.Text.Substring(3, 3) = " :" Then
Desde esa posición del substring no hay 3 caracteres hay menos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas