C#将所选项目从ListBox1添加到ListBox2,相反[关闭]
Posted
技术标签:
【中文标题】C#将所选项目从ListBox1添加到ListBox2,相反[关闭]【英文标题】:C# Add Selected Items from ListBox1 to ListBox2 and on the contrary [closed] 【发布时间】:2013-11-10 14:10:18 【问题描述】:这有什么问题?
private void button1_Click(object sender, EventArgs e)
if (!string.IsNullOrWhiteSpace(groupBox1.Text))
lst2.Items.Add(lst1.SelectedItems);
【问题讨论】:
会发生什么?它是否无法编译,是否产生错误,输出是否与预期不同,还是什么?我们需要详情。它到底怎么不适合你? @Servy 这会引发编译器错误,Items.Add
需要一个 Item
。
@Evanlewis 是的,但我希望提出问题的人花时间解释他们的问题。 他们有责任在问题中包含该信息。我在几秒钟内就自己想出来了,但这并不意味着他不应该一开始就把它包括在内。
@Servy 我完全同意,我正在尝试通过讨论来进行教学;)如果 SO 中只有发布的代码并带有评论“这有什么问题”,那么我们都会陷入痛苦的世界...
【参考方案1】:
您正在尝试将整个项目集合作为单个项目添加到另一个集合中。
适当添加每个选定项目的最简单方法是遍历它们并单独添加它们:
foreach(var i in lst1.SelectedItems)
lst2.Items.Add(i);
【讨论】:
没关系。删除了我的反对票。 +1【参考方案2】:或者,如果您只想添加单个项目,请执行以下操作:
lst2.Items.Add(lst1.SelectedItems[0]);
【讨论】:
【参考方案3】:用这个修改你的代码:
private void button1_Click(object sender, EventArgs e)
if (!string.IsNullOrWhiteSpace(groupBox1.Text))
lst2.Items.AddRange(lst1.SelectedItems);
【讨论】:
以上是关于C#将所选项目从ListBox1添加到ListBox2,相反[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将所选项目从 QListWidget、QTableWidget 保存到 Qsettings
使用 Chosen 插件将所选文本选项以外的文本添加到选择中