Hola a todos, estoy haciendo un pequeño programita en VB.net que tiene un formulario (formulario1)que tiene un texbox donde se ingresa un cogido y un boton que me hace una consulta a una BD SQL en un servidor y me muestra datos si el codigo que ingresa el usuario lo encuentra en la base. Si encuentra el codigo ingresado me muestra algunos datos dentro de unos texbox, luego tengo un boton que dice continuar si uno pincha ese boton me abre otro formulario (formulario 2), en el fomulario2 tengo algunos texbox y un boton que dice volver, si pincho este boton, este me regresa al formulario anterior o sea al formulario 1 si en este formulario vuelvo a pinchar el boton continuar se repite el proceso sin problemas, el problema se me presenta si realizo una nueva busqueda en la base es decir si ingreso otro codigo pincho el boton de consultar a la BD me muestra los nuevos datos en los texbox y despues pincho nuevamente el boton continuar para ir al otro formulario o sea el formulario 2 me da un Error que dice algo a si:
"el valor no esta dentro del intervalo esperado - No se controló System.ArgumentException"
en esta parte del codigo: en la linea de color rojo
Código vb:
Ver originalPrivate Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
frm = New Form2
Form2.ShowDialog() ' en esta linea me indica el error
End Sub
(con este codigo voy al formulario 2)
El codigo de mi Formulario 1 es este:
Código vb:
Ver originalImports System
Imports System.Data
Imports System.Data.SqlClient
Public Class Form1
Dim cnn As New SqlConnection("data source = servidor; initial catalog = base; user id = user; password = pass")
Dim Ada As New SqlDataAdapter()
'' Dim Ds As New DataSet()
Dim frm As Form2
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'cnn.Open()
'MessageBox.Show("Se Conecto con exito a la Base de datos", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information)
'cnn.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Sqlstr As New SqlCommand("SELECT NOMBRE, DIRECCION,LOCALIDAD FROM CLIENTES WHERE CODIGO=" & "'" & TextBox1.Text & "'", cnn)
cnn.Open()
Dim dr As SqlDataReader = Sqlstr.ExecuteReader(CommandBehavior.CloseConnection)
While dr.Read
Dim value As Object = dr.Item("NOMBRE")
If value IsNot DBNull.Value Then TextBox2.Text = CStr(value)
value = dr.Item("DIRECCION")
If value IsNot DBNull.Value Then TextBox3.Text = CStr(value)
value = dr.Item("LOCALIDAD")
If value IsNot DBNull.Value Then TextBox4.Text = CStr(value)
End While
dr.Close()
'cnn.Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
frm = New Form2
Form2.ShowDialog()
' (con este codigo voy al formulario 2)
End Sub
End Class
Este es el Codigo de MI formulario 2
Código vb:
Ver originalPublic Class Form2
Dim frm2 As Form1
Private Sub Med_Terreno_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Med_Terreno.Click
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
frm2 = New Form1
Me.Close()
Form1.ShowDialog()
' (con este codigo vuelvo al formulario 1)
End Sub
End Class
Me podrian ayudar a solucionar este error por favor...