J'essaie d'obtenir la valeur de l'élément sélectionné dans la liste en utilisant le code ci-dessous, mais il renvoie toujours une chaîne nulle.
DataSet ds = searchforPrice(Convert.ToString(listBox1.SelectedItem));
Ici, j'essaie de transmettre la valeur de l'élément sélectionné sous forme de chaîne à la méthode searchforPrice afin de récupérer les données de la base de données.
Comment puis-je récupérer la valeur de l'élément sélectionné sous forme de chaîne?
J'ajoute des éléments à la liste déroulante à partir de la liste déroulante qui charge à son tour les éléments de la base de données.
listBox1.Items.Add(comboBox2.Text);
Tout le monde a la réponse pour cela ..
Si vous voulez récupérer le texte d'affichage de l'élément, utilisez la méthode GetItemText
:
string text = listBox1.GetItemText(listBox1.SelectedItem);
Si vous utilisez ListBox dans votre application et que vous souhaitez renvoyer la valeur sélectionnée de ListBox et l'afficher dans une étiquette ou dans une autre option, utilisez ce code.
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
label1.Text = listBox1.SelectedItem.ToString();
}
Pour récupérer la valeur de tous les éléments sélectionnés dans une zone de liste, vous pouvez convertir l'élément sélectionné dans DataRowView, puis sélectionner la colonne contenant vos données:
foreach(object element in listbox.SelectedItems) {
DataRowView row = (DataRowView)element;
MessageBox.Show(row[0]);
}
string textValue = ((ListBoxItem)listBox1.SelectedItem).Content.ToString();
Vous pouvez utiliser celui-ci pour obtenir le nom ListItme sélectionné:
String selectedItem = ((ListBoxItem)ListBox.SelectedItem).Name.ToString();
Assurez-vous que votre chaque ListBoxItem a une propriété Name
Obtenir le nom complet dans la liste des fichiers (chemin d'accès complet) (Thomas Levesque répond modificaton, merci Thomas):
...
string tmpStr = "";
foreach (var item in listBoxFiles.SelectedItems)
{
tmpStr += listBoxFiles.GetItemText(item) + "\n";
}
MessageBox.Show(tmpStr);
...
Si vous voulez récupérer votre valeur dans une liste déroulante, vous devriez essayer ceci:
String itemSelected = numberListBox.GetItemText(numberListBox.SelectedItem);