我还有另一个问题,我似乎无法在Google上找到任何内容。
此计划的作用
该程序显示来自RSS提要的信息。
问题
如何将Arraylist中的所有项目加载到TextBox?
我尝试过的事情
这就是我到目前为止所做的:
List<Array> list1 = new List<Array>();
foreach (var item in list1)
{
textBox1.AppendText(item.ToString());
}
问题
当我这样做时,TextBox显示:
System.String [] System.String []
而不是:
CraftBukkit推荐版本:1.2.4-R1.0(版本2126) http://dl.bukkit.org/downloads/craftbukkit/view/00993_1.2.4-R1.0/
有人知道这个数组的工作原理吗? 我是否需要遍历数组并搜索特定索引?
很抱歉,但我对C#还是有点新鲜,抱歉我的英语我是荷兰语:&lt;。
答案 0 :(得分:2)
看起来你的ArrayList包含字符串数组而不是字符串。所以试试这个:
foreach (var item in list1.OfType<string[]>().SelectMany(i => i))
{
textBox1.AppendText(item);
}
答案 1 :(得分:0)
似乎item
是一个字符串数组,所以试着破坏它:
foreach (var item in list1)
{
textBox1.AppendText(string.Join("", item));
}
答案 2 :(得分:0)
您的代码基本上是一个数组列表。这就是它显示system.string []
的原因将其更改为
foreach (var item in list1)
{
textBox1.AppendText(string.Join("", item));
}
它将加入List&lt;&gt;中的每个字符串[](即项目)并像
一样创建它firstarrrayfirstitem,firstarrayseconditem
和文本框
firstarrrayfirstitem,firstarrayseconditem,secondarrayfirstitem,secondarrayseconditem ....等等。
答案 3 :(得分:0)
更好的方法是使用stringbuilder来提高性能并减少文本框调用的propertychanged事件;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
foreach (var item in list1.OfType<string[]>().SelectMany(i => i))
{
sb.Append(item);
}
textBox1.Text = sb.ToString();
答案 4 :(得分:0)
更好的方式:
textBox1.Text = string.Join("", list1.OfType<string[]>().SelectMany(i => i));