elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Saber el Itemdata(vb.net) de un combobox?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Saber el Itemdata(vb.net) de un combobox?  (Leído 14,492 veces)
Kal_El_00100

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Saber el Itemdata(vb.net) de un combobox?
« en: 20 Mayo 2010, 05:26 am »

hola gente les pido ayuda, estuve buscando y pensando pero no veo la solucion trate de agarrar un codigo viejo de vb 6.0 que tenia e intentar pasarlo a vb.net pero no me resulta hay algo que me falta. miren..

asi obtenia el itemddata de un combo en vb 6.0
Código:
Public Function ObtieneListIndex(unCombo As ComboBox, pItemData As Long) As Integer
Dim i As Integer
For i = 0 To unCombo.ListCount - 1
    If pItemData = unCombo.ItemData(i) Then
        ObtieneListIndex = i
        Exit Function
    End If
Next
ObtieneListIndex = -1
End Function
'de esta forma puedo saber que listindex le corresponde a cada item
pero obviamente no pude pasarlo a .net ya que ahora cargo el combo diferente que antes.

el comobo lo cargo asi ahora:
Código:
Dim da As New OleDb.OleDbDataAdapter(STRSQL, CN)
        'Dim da As New OleDbDataAdapter(STRSQL, conexion)
        Dim ds As New DataTable(Tabla)
        '  Conexion.Open()
        da.Fill(ds)
        With CMB
            CMB.DisplayMember = Campo
            CMB.ValueMember = Indice
            CMB.DataSource = ds
            CMB.Text = " "
        End With
ahora como hago para saber que item le corresponde a que listindex, siempre comparando con el item de la base de datos y la listindex de los combos.

esto lo hago para que al cargarse un formulario con un por ejemplo IDcliente especifico en los combos se muestren los item correspondientes.
espero que me hayan entendido si por favor me puedieran ayudar. Gracias


« Última modificación: 23 Mayo 2010, 00:08 am por Kal_El_00100 » En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #1 en: 20 Mayo 2010, 19:59 pm »

VB es tan feo xD hehe

Bueno veamos, con esa función ObtieneListIndex, te da el index del texto del item que pases como pItemData?

En .net para saber el index solo hace falta hacer así:

Código
  1. comboBox.Items.IndexOf(<el objeto del item>);


Bueno y no entiendo mucho lo que quieres hacer hehe, un saludo!


En línea

Kal_El_00100

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #2 en: 21 Mayo 2010, 23:31 pm »

si, hace eso, lo que quiero hacer es algo igual a lo que estaba en vb 6.0 pero en .net, hmm lo que me pasaste no me sirvio poruqe lo use pero todos los valores que me da son -1 como itemdata.
Código:
        Public Function Obtiene_ListIndex(ByVal UnCOmbo As ComboBox, ByVal pItemdata As Integer) As Integer

        Dim I As Integer

        For I = 0 To UnCOmbo.Items.Count
            If pItemdata = UnCOmbo.Items.IndexOf(I) Then
                Obtiene_ListIndex = I
            End If
        Next
    End Function
en esto todos los valores son - 1   -->   UnCOmbo.Items.IndexOf(I)

pitem es el numero del item del que yo quiero saber su listidex
« Última modificación: 23 Mayo 2010, 00:07 am por Kal_El_00100 » En línea

Kal_El_00100

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #3 en: 22 Mayo 2010, 00:45 am »

ya lo solucuione gracias, usando un poco el cerebelo.
Código:
    Public Function Obtiene_ListIndex(ByVal UnCOmbo As ComboBox, ByVal pItemdata As Integer) As Integer

        Dim DRWItem As System.Data.DataRowView
        Dim i As Integer
        For Each DRWItem In UnCOmbo.Items
            i = i + 1
            If pItemdata = DRWItem.Row(0) Then
                Obtiene_ListIndex = i - 1
                Exit Function
            End If

        Next
        Obtiene_ListIndex = -1
    End Function
Como carge el Combo con un datatable el item aparece en una de las columnas, asique puse un for para recorrer los items e ir viendo la columna 0 en la que esta el item, la variable i me va a decir la posicion en la lista.
Gracias igual bye
« Última modificación: 23 Mayo 2010, 00:07 am por Kal_El_00100 » En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #4 en: 22 Mayo 2010, 15:31 pm »

Ah ok, eso era lo que necesitabas, no había entendido..

Recuerda siempre poner los códigos entre los tags [ code ][ /code]

saludos
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #5 en: 24 Mayo 2010, 02:15 am »

Kal_El_00100 hay una clase de el guille que simula el ItemData del visual basic 6 en .NET...es solo una clase que por cada item guarda en la clase los datos para despues recurperarlos...mirate yo lo uso y anda de 10:

ItemData en .NET

saludos.
En línea

Kal_El_00100

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Saber el Itemdata(vb.net) de un combobox?
« Respuesta #6 en: 31 Mayo 2010, 06:55 am »

Muchas gracias seba, lo voy a probar. eso se ajusta mas a lo que queria.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines