EjemplosDuoc.es.tl
  ItemData .Net
 
 


Para Emular el ItemData de Vb6 se debe hacer una clase de la siguiente manera:
(Lo extraje de una pagina pero no recuerdo la fuente. Lo importante que funciona.)

Public Class Cls_lista
    Private StrNombre As String
    Private IntCodigo As String

    Public Sub New()
        StrNombre = ""
        IntCodigo = 0
    End Sub

    Public Sub New(ByVal Name As String, ByVal ID As String)
        StrNombre = Name
        IntCodigo = ID
    End Sub

    Public Property Name() As String
        Get
            Return StrNombre
        End Get

        Set(ByVal sValue As String)
            StrNombre = sValue
        End Set

    End Property

    Public Property ItemData() As String
        Get
            Return IntCodigo
        End Get

        Set(ByVal iValue As String)
            IntCodigo = iValue
        End Set

    End Property

    Public Overrides Function ToString() As String
        Return StrNombre
    End Function
End Class

Luego para cargar valores al Combo:

        With ComboBox1
            .Items.Add(New Cls_lista("", 0))
            .Items.Add(New Cls_lista("Peso", 15))
            .Items.Add(New Cls_lista("Dólar", 25))
            .Items.Add(New Cls_lista("Euro", 45))
            .SelectedIndex = 0
        End With

Para Obtener el Valor del codigo(0,15,25,45).

Label1.Text = ComboBox1.Items(ComboBox1.SelectedIndex).ItemData

Para Buscar un texto el combo.

ComboBox1.SelectedIndex = ComboBox1.FindStringExact("Euro")

Cuando se desea, mediante el codigo (0,15,25,45) obtener el peso,dolar o euro se debe hacer la siguiente clase:
Public Class C_Busqueda_Combobox
    Public Function Buscar_Codigo_Combo(ByVal Combo As ComboBox, ByVal Codigo As Integer)
        On Error GoTo Error_Buscar_Codigo_Combo
        Dim Indice As Integer
        Dim Retorno_Indice As Integer
        Retorno_Indice = -1
        Indice = 1
        While Indice <= (Combo.Items.Count - 1)
            If Trim(Codigo) = Combo.Items(Indice).ItemData Then
                Buscar_Codigo_Combo = Indice
                Exit Function
            End If
            Indice += 1
        End While
        Buscar_Codigo_Combo = 0
        Exit Function
Error_Buscar_Codigo_Combo:
    End Function
End Class

¿como usar?
        Dim CBC As New C_Busqueda_Combobox
        ComboBox1.SelectedIndex = CBC .Buscar_Codigo_Combo(ComboBox1, 45)

esto seleccionara el item del combo correspondiente al codigo, que en este caso seria Euro.


 
   
 
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis