Comment avoir la valeur de l'item sélectionné dans un Combobox ?
Bonjour tout le monde,
je bloque sur l'utilisation des ComboBox liée à la base de données sql server, pour faire simple j'ai deux table maitre details
la premiere SECTEUR(ID_SECTEUR: int; LIBELLE :nvarchar(100) )
le deuxieme SOUS_SECTEURS (ID_SOUS_SECTEUR: int; LIBELLE : nvarchar(100), ID_SECT: int );
dans le Load de ma form j'inititialse le premier combobox nomé ComboSecteur comme suit :
Code:
1 2 3 4
|
ComboSecteur.DataSource = (dbs.SECTEURS.Select(p => new { ID= p.ID_SECTEUR, Secteur= p.LIBELLE }).ToList());
ComboSecteur.DisplayMember = "Secteur";
ComboSecteur.ValueMember = "ID"; |
Dans la procédure de SelectedIndexChanged du ComboSecteur j'initialse et filtre les Items de de ComboSousSecteur comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
private void ComboSecteur_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.ComboSecteur.Text != null)
{
int SelectedSect = Convert.ToInt32(ComboSecteur.SelectedValue.ToString());
this.ComboSousSecteur.DataSource = dbs.SOUS_SECTEURS.Where(x => x.ID_SECTEUR== SelectedSect).Select(p => new { ID= p.ID_SOUS_SECTEUR,
SousSecteur = p.LEBELLE_SOUS_SECTEUR }).ToList();
this.ComboSousSecteur.ValueMember = "ID";
this.ComboSousSecteur.DisplayMember = "SousSecteur";
this.ComboSousSecteur.Enabled = true;
this.ComboSecteur.BackColor = Color.Aquamarine;
}
} |
mais cela me revoie une exeption : format de la chaine d'entree incorrect sur la ligne :
Code:
1 2
|
int SelectedSect = Convert.ToInt32(ComboSecteur.SelectedValue.ToString()); |
j'ai changé la ligne par :
Code:
int SelectedSect = int.Parse(ComboSecteur.SelectedValue.ToString());
mais toujours le même message d'erreur
merci de m'éclairer