我试图使用下面的代码获取列表框中所选项目的值,但它总是返回空字符串。
DataSet ds = searchforPrice(Convert.ToString(listBox1.SelectedItem));
这里我试图将所选项目的值作为字符串传递给方法searchforPrice以从数据库中检索数据集。
如何将所选项目的值作为字符串进行检索?
我正在从组合框添加项目到列表框,然后组合框加载数据库中的项目。
listBox1.Items.Add(comboBox2.Text);
任何人都有这个答案..
答案 0 :(得分:70)
如果要检索项目的显示文本,请使用GetItemText
方法:
string text = listBox1.GetItemText(listBox1.SelectedItem);
答案 1 :(得分:8)
如果您在应用程序中使用ListBox并且想要返回ListBox的选定值并将其显示在Label或其他任何内容中,那么使用此代码,它将帮助您
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
label1.Text = listBox1.SelectedItem.ToString();
}
答案 2 :(得分:1)
要检索àlistbox中所有选定项目的值,您可以在DataRowView中转换所选项目,然后选择数据所在的列:
foreach(object element in listbox.SelectedItems) {
DataRowView row = (DataRowView)element;
MessageBox.Show(row[0]);
}
答案 3 :(得分:1)
string textValue = ((ListBoxItem)listBox1.SelectedItem).Content.ToString();
答案 4 :(得分:0)
如果要从列表框中检索值 你应该试试这个:
String itemSelected = numberListBox.GetItemText(numberListBox.SelectedItem);
答案 5 :(得分:0)
在文件列表框中获取FullName(完整路径)列表(Thomas Levesque回答修改,感谢Thomas):
...
string tmpStr = "";
foreach (var item in listBoxFiles.SelectedItems)
{
tmpStr += listBoxFiles.GetItemText(item) + "\n";
}
MessageBox.Show(tmpStr);
...
答案 6 :(得分:0)
您可以使用此选项获取所选的ListItme Name ::
String selectedItem = ((ListBoxItem)ListBox.SelectedItem).Name.ToString();
确保您的每个ListBoxItem都具有Name属性
答案 7 :(得分:0)
详细说明了皮尔·法希姆(Pir Fahim)先前的回答,他是对的,但我使用的是selectedItem.Text(使它对我有用的唯一方法)
使用SelectedIndexChanged()事件将数据存储在某处。 就我而言,我通常会填写一个自定义类,例如:
class myItem {
string name {get; set;}
string price {get; set;}
string desc {get; set;}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
myItem selected_item = new myItem();
selected_item.name = listBox1.SelectedItem.Text;
Retrieve (selected_item.name);
}
然后您可以从“ myItems”列表中检索其余数据。
myItem Retrieve (string wanted_item) {
foreach (myItem item in my_items_list) {
if (item.name == wanted_item) {
// This is the selected item
return item;
}
}
return null;
}
答案 8 :(得分:-1)
如果你想检索从列表框中选择的项目,这里是代码......
String SelectedItem = listBox1.SelectedItem.Value;
答案 9 :(得分:-1)
正确的解决方案似乎是:
string text = ((ListBoxItem)ListBox1.SelectedItem).Content.ToString();
请确保使用。内容,而不要使用。名称。