Hola.
Me parece que el problema que tienes es que estás validando el valor introducido en el evento TextChange del textbox, si es así el problema que tienes es que "" no se puede convertir a integer, para solucionarlo cambia la funcion solod por esta:
A demás de verificar que el texto no esté vacío (en cuyo caso no hay que hacer nada) has de verificar que el texto introducido sea en formato numérico, para eso es el Try-Catch.
Un saludo.
Me parece que el problema que tienes es que estás validando el valor introducido en el evento TextChange del textbox, si es así el problema que tienes es que "" no se puede convertir a integer, para solucionarlo cambia la funcion solod por esta:
Código (vbnet) [Seleccionar]
Public Sub solod()
If txtDias.Text <> "" Then
Try
Dim soloD As Integer
soloD = CInt(txtDias.Text)
If soloD > 30 Then
MsgBox("Ingresar Solo Hasta 30 x Dias Trabajadas", MsgBoxStyle.Information, "Advertencia")
End If
Catch
MsgBox("Introduzca los dias en formato numerico.", MsgBoxStyle.Information, "Advertencia")
End Try
End If
End Sub
A demás de verificar que el texto no esté vacío (en cuyo caso no hay que hacer nada) has de verificar que el texto introducido sea en formato numérico, para eso es el Try-Catch.
Un saludo.