将选定的列表框(绑定)项目保存到c#中的数组

将选定的列表框(绑定)项目保存到c#中的数组,第1张

概述将选定的列表框(绑定)项目保存到c#中的数组

string[] chkItems = new string[4]; string[] str = new string[4]; str[0] = txtID.Text; str[1] = txtname.Text; str[2] = txtEmail.Text; itemCount = ltbxInterests.SelectedItems.Count; for (int i = 0; i <= itemCount; i++) { ltbxInterests.SelectedItems.copyTo(chkItems,0); // here it is returning an exception //"Object cannot be stored in an array of this type." }

请帮助我如何摆脱这个例外

如何修改正在使用的DLL?

写一个mac的.net软件

卸载框架4.6.2预览

同步两个sql Server 2008数据库

如何deBUGging“错误创build窗口句柄”错误?

几个问题在这里,chkItems被定义为长度4,所以你会得到一个异常,如果你尝试并放入超过4项。源数组SelectedItems是类型的对象,所以你需要投的结果。

假设你只是把字符串放入列表框中,你可以使用(记得引用System.linq)

string[] str = new string[4]; str[0] = txtID.Text; str[1] = txtname.Text; str[2] = txtEmail.Text; string[] chkItems = ltbxInterests.SelectedItems.OfType<string>().ToArray();

如果您想限制前4项,您可以将最后一行替换为

string[] chkItems = ltbxInterests.SelectedItems.OfType<string>().Take(4).ToArray();

你也可以缩短代码来使用数组初始值设定项(但这会使str长度为3,因为你只有3个项目):

string[] str = new [] { txtID.Text,txtname.Text,txtEmail.Text,}

SelectedItems是Object的集合,为了使用copyTo方法, chkItems必须是一个object类型的数组(即object[] )。

否则,您可以使用liNQ将其转换为字符串列表:

var selectedList = ltbxInterests.SelectedItems.OfType<object>() .Select(x => x.ToString()).ToList();

你应该检查> chkItems的类型。

总结

以上是内存溢出为你收集整理的将选定的列表框(绑定)项目保存到c#中的数组全部内容,希望文章能够帮你解决将选定的列表框(绑定)项目保存到c#中的数组所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1278025.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存