Foros del Web » Programación para mayores de 30 ;) » .NET »

Duda con VB.net y ComboBox

Estas en el tema de Duda con VB.net y ComboBox en el foro de .NET en Foros del Web. Buenas, hace poco comencé a programar en vb.net (antes lo hacia con VB6) Y mi duda es la sig: Como no encontré en un combobox ...
  #1 (permalink)  
Antiguo 19/01/2009, 09:15
 
Fecha de Ingreso: agosto-2007
Mensajes: 26
Antigüedad: 16 años, 8 meses
Puntos: 0
Duda con VB.net y ComboBox

Buenas, hace poco comencé a programar en vb.net (antes lo hacia con VB6)

Y mi duda es la sig:

Como no encontré en un combobox la propiedad ItemData, buscando encontré este código:

Código:
    Public Class ValueDescriptionPair

        Private m_Value As Object
        Private m_Description As String

        Public ReadOnly Property Value() As Object
            Get
                Return m_Value
            End Get
        End Property

        Public ReadOnly Property Description() As String
            Get
                Return m_Description
            End Get
        End Property

        Public Sub New(ByVal NewValue As Object, ByVal NewDescription As String)
            m_Value = NewValue
            m_Description = NewDescription
        End Sub

        Public Overrides Function ToString() As String
            Return m_Description
        End Function

    End Class

   Private DD_Array As New ArrayList


        DD_Array.Add(New ValueDescriptionPair("5", "Descripcion"))

        With cmb1
            .DisplayMember = "Description"
            .ValueMember = "Value"
            .DataSource = DD_Array
        End With

Lo cual funciona de 10!

El problema es que cuando cambio los valores del array, no puedo hacer que el combobox me los actualice también :S

Alguna idea?

Gracias !
  #2 (permalink)  
Antiguo 19/01/2009, 16:47
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: Duda con VB.net y ComboBox

Tendrías que darle in Items.Clear para formatear tu control y posteriormente volver a agregar tu array al combobox.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #3 (permalink)  
Antiguo 20/01/2009, 06:18
 
Fecha de Ingreso: agosto-2007
Mensajes: 26
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Duda con VB.net y ComboBox

lo intente, pero me da error.

dice que al estar usando un DataSource, no se puede usar esa propiedad.
  #4 (permalink)  
Antiguo 20/01/2009, 08:56
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: Duda con VB.net y ComboBox

Fácil, coloca la propiedad datasource en null y aplicas un items.clear(), aunque no entiendo por que no te actualiza, haber, entonces coloca el código que estas utilizando.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #5 (permalink)  
Antiguo 23/01/2009, 06:58
 
Fecha de Ingreso: agosto-2007
Mensajes: 26
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Duda con VB.net y ComboBox

Cita:
Iniciado por erick_arcini Ver Mensaje
Fácil, coloca la propiedad datasource en null y aplicas un items.clear(), aunque no entiendo por que no te actualiza, haber, entonces coloca el código que estas utilizando.

Muchisimas gracias !
funciono !!

Ahora tengo otra dudita :D
se puede hacer que al ir escribiendo en el combobox vallan apareciendo las opciones que tiene?

Gracias!
  #6 (permalink)  
Antiguo 23/01/2009, 07:46
 
Fecha de Ingreso: noviembre-2008
Ubicación: Madrid, España
Mensajes: 149
Antigüedad: 15 años, 5 meses
Puntos: 5
Respuesta: Duda con VB.net y ComboBox

El combo box tiene dos propiedades que se ocupan de eso, AutocompleteMode y AutocompleteSource :)
  #7 (permalink)  
Antiguo 24/01/2009, 14:14
 
Fecha de Ingreso: agosto-2007
Mensajes: 26
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Duda con VB.net y ComboBox

Mil Gracias :D

Tema solucionado
  #8 (permalink)  
Antiguo 16/08/2010, 10:22
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Duda con VB.net y ComboBox

alguien save como sacar los valores desde el Combobox.SelectedItem(..)


la clase contiene el valor

valor texto = Combobox.text
valor indice = Combobox.SelectedValue.ToString

en eso estoy OK
sin embargo si quiero sacar el valor no del texto "Combobox.text "si no del item "clase" puedo colocar otro valor distinto , por ejemplo poder contener un tercer valor , se los digo porque modifique la clase y la veo tiene los 3 valores pero no puedo selecionarla


Public Class Cl_CboValuesTres
Private m_Value As Object
Private m_Description As String
Private m_DescriptionTres As String

Public ReadOnly Property Value() As Object
Get
Return m_Value
End Get
End Property

Public ReadOnly Property Description() As String
Get
Return m_Description
End Get
End Property
Public ReadOnly Property DescriptionTres() As String
Get
Return m_DescriptionTres
End Get
End Property

Public Sub New(ByVal NewValue As Object, ByVal NewDescription As String, ByVal NewDescriptionTres As String)
m_Value = NewValue
m_Description = Trim(NewDescription)
m_DescriptionTres = Trim(NewDescriptionTres)
End Sub

Public Overrides Function ToString() As String
Return m_Description
Return m_DescriptionTres
End Function



End Class

[email protected]
  #9 (permalink)  
Antiguo 16/08/2010, 13:28
 
Fecha de Ingreso: agosto-2007
Mensajes: 26
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Duda con VB.net y ComboBox

@zeroyevi
no, lo que intentas ya no se puede hacer.

lo que si:
La propiedad value esta definida como Object osea que puedes guardar cualquier cosa dentro (como un array, que puede tener el valor1 valor2 valor3)

despues recuperas el array y tienes tus 3 valores!

Código:
Dim Value AsNew ArrayList
Value.Add("VALOR1")
Value.Add("VALOR2")
Value.Add("VALOR3")
 
Dim DD_Array AsNew ArrayList
DD_Array.Add(New ValueDescriptionPair(Value, "Descripcion"))
 
With ComboBox1
.DisplayMember = "Description"
.ValueMember = "Value"
.DataSource = DD_Array
EndWith

ComboBox1.SelectedValue(0) 'devuelve VALOR1
ComboBox1.SelectedValue(1) 'devuelve VALOR2
ComboBox1.SelectedValue(2) 'devuelve VALOR3
 
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:52.