gpt4 book ai didi

c# - 无法将 ListBox.ObjectCollection 转换为(类型化)数组

转载 作者:太空狗 更新时间:2023-10-29 18:04:58 37 4
gpt4 key购买 nike

我想将项目转换为字符串数组或用于填充 ListBox.DataSource 的类型。该类型已覆盖 ToString(),但我似乎无法将其转换,甚至无法转换为 String[]。

String[] a = (String[])ListBox1.Items;
Contacts[] b = (Contacts[])ListBox1.Items;

最佳答案

string[] a = ListBox1.Items.Cast<string>().ToArray();

当然,如果你打算用a做迭代它,您不必调用 ToArray()。您可以直接使用 IEnumerable<string>Cast<string>() 返回,例如:

foreach (var s in ListBox1.Items.Cast<string>()) {
do_something_with(s);
}

或者,如果您有某种方法可以将字符串转换为联系人,您可以这样做:

IEnumerable<Contacts> c = ListBox1.Items.Cast<string>().Select(s => StringToContact(s));

关于c# - 无法将 ListBox.ObjectCollection 转换为(类型化)数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2599125/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com