In VB.Net was het in vroegere versies zo dat je om de geselecteerde waarde van een ComboBox te krijgen, je dit diende te gebruiken:
Ok, niet volledig hetzelfde, want SelectedItem is van type Object en kan ook Nothing zijn, terwijl Text een String is.
De facto, komt het volgens mij echter op hetzelfde neer (en is Text net wat minder werk):
)nog steeds gemakkelijker naar SelectedItem... als ik de uitleg op MSDN correct interpreteer, dan spreekt daaruit geen voorkeur (of eerder nog voor Text voor de situatie zoals ik ze hier schets).
Mag ik even vragen hoe jullie het interpreteren? thx!
Visual Basic .NET:
Als ik dat vergelijk met de huidige versies (als ik me niet vergis is het zo sinds Visual Studio 2008, maar zeker ben ik niet), dan krijg ik met 1
| cboLijstje.SelectedItem |
Visual Basic .NET:
net hetzelfde.1
| cboLijstje.Text |
Ok, niet volledig hetzelfde, want SelectedItem is van type Object en kan ook Nothing zijn, terwijl Text een String is.
De facto, komt het volgens mij echter op hetzelfde neer (en is Text net wat minder werk):
Visual Basic .NET:
tegenover1
2
3
4
5
| If Not IsNothing(cboLijstje.SelectedItem) Then strReturnValue = cboLijstje.SelectedItem.ToString() Else strReturnValue = "" End If |
Visual Basic .NET:
MSDN geeft me geen uitsluitsel:1
| strReturnValue = cboLijstje.Text |
ComboBox.SelectedItem Property: The object that is the currently selected item or Nothing if there is no currently selected item.
Bij de remarks van de Text-property lees ik het volgende:ComboBox.Text Property:The text associated with this control.
Toch grijp ik om een of andere reden (waarschijnlijk "ouderdom"Setting the Text property to Nothing or an empty string ("") sets the SelectedIndex to -1. Setting the Text property to a value that is in the Items collection sets the SelectedIndex to the index of that item. Setting the Text property to a value that is not in the collection leaves the SelectedIndex unchanged.
Mag ik even vragen hoe jullie het interpreteren? thx!

