怎么将一个列表的内容放到一个单独的MessageBox中?基本上,我有一个包含多个项目的列表,我想要一个消息框来显示它们。我最接近的是每个项目的消息框(使用foreach)。我想要的是等效于:MessageBox.Show("Listcontains:"+Foreach(stringstrinlist){str+Environment.Newline+})但显然这是行不通的!这样做的正确方法是什么?您可以使用string.Join将所有内容连接到一个字符串中:varmessage=string.Join(Environment.NewLine,list);MessageBox.Show(消息);但是,如果您无权访问.NET4,则不会出现IEnumerable重载。您将不得不避开使用数组的那个:varmessage=string.Join(Environment.NewLine,list.ToArray());MessageBox.Show(消息);您还可以使用Stringbuilder:StringBuilderbuilder=newStringBuilder();foreach(列表中的字符串str){builder.Append(str.ToString()).AppendLine();}Messagebox.Show(builder.ToString());如果你有.Net4.0字符串s=String.Join(",",list);如果你没有,但是有3.5strings=String.Join(",",list.ToArray());只是为了好玩,如果您需要对非字符串集合执行一次这样的操作-使用AggregateLINQ版本,它最接近您的示例语法。不要在这里使用它,在这种情况下请使用String.Join,但请记住,您在LINQ中有一些东西可以满足您的需要。MessageBox.Show("Listcontains:"+list.Aggregate((str,val)=>str+Environment.NewLine+val);编辑:另外,就像MartinhoFernandes指出的那样,在这种情况下最好使用StringBuilder类,所以:MessageBox.Show("Listcontains:"+list.Aggregate(newStringBuilder(),(sb,val)=>sb.AppendLine(val),sb=>sb.ToString()));你只需要做一个for循环,例如:以上是C#学习教程:如何把列表中的内容放在单个MessageBox中?所有内容分享,如果对大家有用还需要详细了解C#学习教程,希望大家多多点赞Follow—stringtotal="";for(inti=0;i本文采集自网络,不代表立场,如涉及侵权,请点击右转联系管理员删除,转载请注明出处:
