16/04/2016, 23:32
|
| | Fecha de Ingreso: abril-2016 Ubicación: Costa Rica
Mensajes: 2
Antigüedad: 8 años, 7 meses Puntos: 0 | |
Combobox dependientes con stored Procedure Saludos comunidad
Tengo dos combobox cbo.Paises, cboCiudades
necesito cargar las ciudades en el combo ciudades cuando se haya selecionado un pais en el combo paises. Estoy utilizando 3 capas y un store procedure para cargar los paises es el siguiente: CREATE PROCEDURE SP_ListarPaises
AS
SELECT *
FROM tPaises
ORDER BY tPaises.Nombre asc
GO
resultado:
Id_Pais Nombre
1 Alemania
2 Belgica
-------------------------------
esta es la funcion que realize en capadatos para agregar el storedProcedure: Public Function ListaPaises() As DataTable
Try
cn.ConnectionString = CadenaConexion()
Dim Da As New SqlDataAdapter("SP_ListarPaises", cn)
Da.SelectCommand.CommandType = CommandType.StoredProcedure
Dim datos As New DataTable
Da.Fill(datos)
Da = Nothing
Return datos
Catch ex As Exception
MsgBox("Error" & ex.Message, MsgBoxStyle.Critical, "Informe de Error")
If cn.State = ConnectionState.Open Then cn.Close()
cn.Dispose()
Return Nothing
Finally
End Try
End Function
-------------------------------------
esta es el procedimiento que instancio en capa presentacion para llenar el combo:
Public Sub llenarComboPaises()
Dim dt As New DataTable
Dim func As New CapadatosFunciones
Try
dt = func.ListarPaises
Dim dr As DataRow = dt.NewRow()
dr("Nombre") = "Seleccione un Pais..."
dr("Id_Pais") = 0
dt.Rows.InsertAt(dr, 0)
cboPaises.SelectedValue = 0
cboPaises.DisplayMember = "Nombre"
cboPaises.ValueMember = "Id_Pais"
cboPaises.DataSource = dt
Catch ex As Exception
MsgBox(ex.Message, "No se cargaron los Paises")
End Try
End Sub
Hasta aqui me cargan los paises, ahora lo que quisiera es que al seleccionar un pais en el combo paises se me carguen las ciudades respectivas de ese pais en el combo ciudades.
hice un stored procedure para obtener las ciudades por medio de un parametro ese parametro es el id del pais, es el siguiente:
CREATE PROCEDURE SP_ListarCiudades
@parametroPais Int
AS
SELECT tCiudad.Id_Ciudad, tCiudad.Nombre
FROM tCiudad
WHERE tCiudad.Id_Pais = @parametroPais
ORDER BY tCiudad.Nombre asc
GO
Execute SP_ListarCiudades '22' ( '22 representa por ejemplo al id del pais = Usa)
---------------------------------------------
Resultado:
Id_Ciudad Nombre
1 Dallas
2 Florida
3 Whashington
---------------------------------------
como se haria ya en el codigo para hacer funcionar este stored procedure y que reciba como parametro el selectvalue del combo paises para que llene el combo ciudades . gracias |