L'obtention de la valeur sélectionnée d'une zone de liste déroulante
public class ComboboxItem {
public string Text { get; set; }
public string Value { get; set; }
public override string ToString() { return Text; }
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int selectedIndex = comboBox1.SelectedIndex;
int selecteVal = (int)comboBox1.SelectedValue;
ComboboxItem selectedCar = (ComboboxItem)comboBox1.SelectedItem;
MessageBox.Show(String.Format("Index: [{0}] CarName={1}; Value={2}", selectedIndex, selectedCar.Text, selecteVal));
}
Je suis en ajoutant comme:
ComboboxItem item = new ComboboxItem();
item.Text = cd.Name;
item.Value = cd.ID;
this.comboBox1.Items.Add(item);
Je reçois un NullReferenceExeption et ne sais pas pourquoi. le texte semble s'affichent très bien.
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
ComboBoxItem
classe est disponible uniquement dans les projets WPF.Vous obtenez
NullReferenceExeption
parce que vous êtes à l'aide de lacmb.SelectedValue
qui est nulle. lecomboBox
ne sais pas quelle est la valeur de votre classe personnaliséeComboboxItem
, afin de faire deOu mieux de est l'utilisation de la liaison de données comme:
J'ai eu une erreur similaire, Ma Classe est
Mais ce que j'ai fait, j'ai coulé ma classe à la propriété SelectedItem de la zone de liste déroulante. Donc, je vais avoir toutes les propriétés de la classe de l'élément sélectionné.
J'espère que cela aide quelqu'un!
Cheers!
Essayez ceci:
Le problème que vous avez avec la
SelectedValue
n'est pas la conversion en nombre entier. C'est le principal problème de sorte usinge l'extrait de code suivant vous aidera à:Essayez ceci: