comment combobox obtenir des données dans le bloc-notes (exécution) par un clic de souris?

Je fais un explorateur Internet complet. J’ai fait beaucoup d’option, un marque-page crée un problème. Supposons que je reçoive une valeur en cliquant sur une nouvelle valeur du fichier bloc-notes, ce qui est conforme à mon idée. Un problème est à nouveau devant moi, chaque clic obtient une valeur en double. comment éviter les doublons, merci de me guider. Ma partie de codage est: –

private void comboBox1_SelectedIndexChanged_1(object sender, EventArgs e) { int kkk = comboBox1.Items.Count; ssortingng path = File.ReadAllText("F:\\kmm.txt"); ssortingng[] y = path.Split('\n'); foreach (ssortingng kk in y) { comboBox1.Items.Add(kk); } // comboBox1.Items.Clear(); ssortingng km = comboBox1.SelectedItem.ToSsortingng(); wb.Navigate(km); } 

combobox capture instantanée :: entrez la description de l'image ici

Chaque fois que l’ ComboBox Selection Index est modifié, les éléments sont chargés depuis F:\kmm.txt .

Vous appliquez une très mauvaise logique pour charger des éléments dans ComboBox

Un meilleur moyen serait de charger l’élément une seule fois dans l’événement ComboBox in Form_Load .

Toutefois, si vous souhaitez que l’événement Ajouter des éléments à la zone de comboBox1_SelectedIndexChanged_1 déroulante de comboBox1_SelectedIndexChanged_1 , vous devez effacer les éléments de comboBox1 .

Essayez de cette façon:

 private void comboBox1_SelectedIndexChanged_1(object sender, EventArgs e) { int kkk = comboBox1.Items.Count; ssortingng path = File.ReadAllText("F:\\kmm.txt"); ssortingng[] y = path.Split('\n'); // clear all existing items first comboBox1.Items.Clear(); foreach (ssortingng kk in y) { comboBox1.Items.Add(kk); } // comboBox1.Items.Clear(); ssortingng km = comboBox1.SelectedItem.ToSsortingng(); wb.Navigate(km); }