CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Comboxbox Con Tres Columnas
(1/1)
Sagma:
Hola a todos, quisiera que me ayudasen, ya estoy :alien: , de no poder captar, pero weno, este es mi problema.
tengo un combobox que lo lleno desde una DB:
--- Código: Text --- Function cargar_combo() Dim Trx As New AccesoDatos.Transacciones(False) Dim DtP As New DataTable Dim Ad As New AccesoDatos.Operaciones(Trx.Comand) DtP = Ad.EjecturarConsulta("SELECT * FROM PERIODOS ORDER BY ID_PERIODOS desc") Me.cmb_periodo.DataSource = DtP Me.cmb_periodo.DisplayMember = "DESCRIPCIONperi" Me.cmb_periodo.ValueMember = "ID_PERIODOS" Trx.CerrarConexion() End Function
con ese codigo lo lleno, pero solo un dato o una columna.
Buscando en la web, he encontrado que poniando la consulta select:
--- Código: Text --- DtP = Ad.EjecturarConsulta("SELECT ID_PERIODOS+'-'+SEMESTREperi+'-'+ANIOper as Lista FROM PERIODOS ORDER BY ID_PERIODOS desc") Me.cmb_periodo.DisplayMember = "Lista" Me.cmb_periodo.ValueMember = "Lista"
pero no me funca, agradeceria su orientacion :comp:
gracias :D
senzao18:
Pues para que la consulta (select) funcione primero tienen que ser todos los campos de tipo cadena... sino te va a marcar error el SQL.....
Trata haciendo cast a los campos........
Sagma:
hola que tal, gracias por tu sugerencia, pero el problema que tenia era que algunos campos era INTEGER. <_<
Asi que se lo he echo de esta forma, y funca.
solo era convertir: :rolleyes:
--- Código: Text --- convert(varchar(20),ANIOSperi)
--- Código: Text --- Function cargar_combo() Dim Trx As New AccesoDatos.Transacciones(False) Dim DtE As New DataTable Dim Ad As New AccesoDatos.Operaciones(Trx.Comand) DtE = Ad.EjecturarConsulta("SELECT ID_PERIODOS, SEMESTREperi + ' - ' + convert(varchar(20),ANIOSperi) AS Lista FROM PERIODOS") Me.cmb_periodo.DataSource = DtE Me.cmb_periodo.DisplayMember = "Lista" Me.cmb_periodo.ValueMember = "ID_PERIODOS" Trx.CerrarConexion() End Function
gracias :comp:
senzao18:
--- Cita de: "Sagma" --- hola que tal, gracias por tu sugerencia, pero el problema que tenia era que algunos campos era INTEGER. <_<
Asi que se lo he echo de esta forma, y funca.
solo era convertir: :rolleyes:
--- Código: Text --- convert(varchar(20),ANIOSperi)
--- Código: Text --- Function cargar_combo() Dim Trx As New AccesoDatos.Transacciones(False) Dim DtE As New DataTable Dim Ad As New AccesoDatos.Operaciones(Trx.Comand) DtE = Ad.EjecturarConsulta("SELECT ID_PERIODOS, SEMESTREperi + ' - ' + convert(varchar(20),ANIOSperi) AS Lista FROM PERIODOS") Me.cmb_periodo.DataSource = DtE Me.cmb_periodo.DisplayMember = "Lista" Me.cmb_periodo.ValueMember = "ID_PERIODOS" Trx.CerrarConexion() End Function
gracias :comp:
--- Fin de la cita ---
mmmmmm <_< eso mismo dije..... Hacer un Cast.....
:whistling:
Navegación
Ir a la versión completa