如何从列表框(c#)中的选定行获取文本?
我想从列表框中的选定行获取数据。我使用命令:如何从列表框(c#)中的选定行获取文本?,c#,C#,我想从列表框中的选定行获取数据。我使用命令: string selected = ListBox1.SelectedItems[0].ToString(); 但结果是: ListVievItem: {here is correct value} 我该怎么办:“ListVievItem:{}”试试这样: string selected = ListBox1.SelectedItems[0].Text; 试着这样做: string selected = ListBox1.SelectedIt
string selected = ListBox1.SelectedItems[0].ToString();
但结果是:
ListVievItem: {here is correct value}
我该怎么办:“ListVievItem:{}”试试这样:
string selected = ListBox1.SelectedItems[0].Text;
试着这样做:
string selected = ListBox1.SelectedItems[0].Text;
您是否尝试过:
ListBox1.SelectedItem.Value
您是否尝试过:ListBox1.SelectedItem.Value
按照John Willemse的建议进行编辑,ListBox
不能有ListViewItems
,因此这个问题似乎与ListView
有关,而不是与ListBox
有关,因此答案中的代码会相应更改
当您这样调用它时listView1.SelectedItems[0].ToString()
您实际上是在调用ListViewItem
对象的ToString()
方法,该方法会产生不需要的结果(首先打印类名,然后打印值)。每个ListViewItem
对象都有Text
属性,您可以从中获取其文本
string selected = listView1.SelectedItems[0].Text;
编辑正如John Willemse所建议的那样,
ListBox
不能有ListViewItems
,因此这个问题似乎与ListView
有关,而不是与ListBox
有关,因此答案中的代码会相应更改
当您这样调用它时listView1.SelectedItems[0].ToString()
您实际上是在调用ListViewItem
对象的ToString()
方法,该方法会产生不需要的结果(首先打印类名,然后打印值)。每个ListViewItem
对象都有Text
属性,您可以从中获取其文本
string selected = listView1.SelectedItems[0].Text;
我觉得很奇怪,因为a)代码应该与
列表框
一起工作,b)列表框中的项目不是列表视图项目
。我猜您使用的是ListView,而不是ListBox。而且。。。为什么SelectedItems[0]允许多选,但只使用检索到的项目数组的第一个项目?我觉得很奇怪,因为a)代码应该与列表框一起工作,b)列表框中的项目不是列表视图项目。我猜您使用的是ListView,而不是ListBox。而且。。。为什么SelectedItems[0]允许多选,但只使用检索到的项目数组的第一项?列表框没有ListViewItems。。。他混淆了ListBox和ListView。ListBox没有ListViewItems。。。他把列表框和列表视图搞混了。