是否可以在 C# 中将 ListBox.SelectedObjectCollection 转换为 ListBox.ObjectCollection?如果是这样,我会怎么做?
问问题
9352 次
5 回答
10
我有一个接受List<string>
.
我可以通过投射它们来传递 SelectedItems 和 Items。
尝试这个:
SelectedItems.Cast<string>().ToList()
Items.Cast<string>().ToList()
<string>
可以用其他一些对象类型替换。
于 2012-09-28T07:19:14.040 回答
4
这是不可能的。
相反,您应该使用IList
.
这两种类型都实现了IList
,因此您可以将其中任何一种作为 an 传递IList
而无需任何显式强制转换。
如果你真的想要,你可以创建一个新ListBox.ObjectCollection
的并从SelectedObjectCollection
.
于 2010-11-02T03:29:05.210 回答
1
这是我的答案:它对我有用。
System.Windows.Forms.ListBox.SelectedObjectCollection lst =this.lstImage.SelectedItems;
List<string> selectedItems = new List<string>();
foreach (object obj in lst)
{
selectedItems.Add(obj.ToString());
}
于 2011-05-04T11:42:19.923 回答
0
List<YourDataType> YourDataTypeList = new List<YourDataType>();
for (int i = 0; i < lbVectors.SelectedItems.Count; i++)
{
YourDataType v = lbVectors.SelectedItems[i] as YourDataType;
YourDataTypeList .Add(v);
}
于 2012-02-28T06:07:17.277 回答
0
这是我用来将选中列表框转换为列表框的答案
CheckedListBox.CheckedItemCollection s= checkedListBox1.CheckedItems;
List<object> ns = new List<object>();
foreach (object ob in s)
{
ns.Add(ob);
}
listBox1.Items.AddRange(ns.ToArray());
于 2017-03-29T07:35:07.603 回答