Estoy probando la característica de VB.NET 2003 de agregar objetos a un ComboBox, mostrar una determinada propiedad de éstos mediante «DisplayMember» y acceder a otra mediante «ValueMember». He creado una clase CEmpleado con dos propiedades públicas ReadOnly llamadas "NIF" y "NombreCompleto" y he agregado un par de objetos a un ComboBox:
Private Sub Form1_Load(...) Handles MyBase.Load
With cboEmpleado.Items
.Add(New CEmpleado("12345678A", "Martínez García, Luis"))
.Add(New CEmpleado("23456789B", "González Puente, Pedro"))
End With
End Sub
En tiempo de ejecución, veo los dos empleados cargados correctamente en el ComboBox; selecciono el primero de ellos con el ratón y quiero mostrar su NIF, seleccionar el segundo empleado y mostrar el NIF de éste, para lo que he colocado un botón que hace:
Private Sub Button1_Click(...) Handles Button1.Click
MessageBox.Show(cboEmpleado.SelectedValue)
cboEmpleado.SelectedValue = "23456789B"
MessageBox.Show(cboEmpleado.SelectedValue)
End Sub
En ambos casos, el MessageBox sale vacío :-(
El ComboBox «cboEmpleado» tiene DisplayMember = "NombreCompleto" y ValueMember = "NIF". Según la ayuda, la propiedad SelectedValue [...] Gets or sets the value of the member property specified by the ValueMember property
¿Qué estoy haciendo mal?
Un millón de gracias de antemano
Un saludo!
Rubén Vigón
Microsoft MVP Visual Basic
http://vigon.mvps.org
Leer las respuestas