Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将arraylist加载到文本框中_C#_Arrays_Arraylist - Fatal编程技术网

C# 将arraylist加载到文本框中

C# 将arraylist加载到文本框中,c#,arrays,arraylist,C#,Arrays,Arraylist,我还有一个问题,我在谷歌上找不到任何东西 此程序的功能 此程序显示RSS提要中的信息 问题 如何将所有项目从Arraylist加载到文本框 我尝试过的事情 这就是我到目前为止所做的: List<Array> list1 = new List<Array>(); foreach (var item in list1) { textBox1.AppendText(item.ToString()); } 列表 有人知道

我还有一个问题,我在谷歌上找不到任何东西

此程序的功能
此程序显示RSS提要中的信息

问题
如何将所有项目从Arraylist加载到文本框

我尝试过的事情
这就是我到目前为止所做的:

List<Array> list1 = new List<Array>();

foreach (var item in list1)
        {
            textBox1.AppendText(item.ToString());
        }
列表

有人知道这个数组是如何工作的吗?
我是否需要遍历数组并搜索特定索引


抱歉,但我对C#还是有点陌生,抱歉我的英语是荷兰语:似乎
item
是一个字符串数组,所以请尝试将其内爆:

foreach (var item in list1)
{
    textBox1.AppendText(string.Join("", item));
}

看起来ArrayList包含字符串数组而不是字符串数组。所以试试这个:

foreach (var item in list1.OfType<string[]>().SelectMany(i => i))
{
    textBox1.AppendText(item);
}
foreach(列表1.OfType()中的var项。SelectMany(i=>i))
{
文本框1.附录文本(项目);
}

您的代码基本上是一个数组列表。这就是为什么它显示system.string[]

换成

foreach (var item in list1)
{
    textBox1.AppendText(string.Join("", item));
}
它将加入列表中的每个字符串[](即项目),并像

FirstArrayFirstItem,firstarrayseconditem

和文本框作为


FirstArrayFirstItem、firstarrayseconditem、secondarrayfirstitem、secondarrayseconditem。。。。等等

更好的方法是使用stringbuider,以提高性能并减少由textbox调用的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();
System.Text.StringBuilder sb=new System.Text.StringBuilder();
foreach(list1.OfType()中的var项。SelectMany(i=>i))
{
某人附加(项目);
}
textBox1.Text=sb.ToString();
更好的方法:

textBox1.Text = string.Join("", list1.OfType<string[]>().SelectMany(i => i));
textBox1.Text=string.Join(“,list1.OfType()。SelectMany(i=>i));

哦,是的,对不起,这就是我定义列表的方式:list list1=new list();似乎项目类型是字符串[],所以您可以做的是
string.Join(“,”,item)
为什么。SelectMany(i=>i)?@Manitra Andriamitondra这似乎工作得很好:)!非常感谢。编辑:我还不能接受答案,需要再等7分钟):.SelectMany()将列表的
列表转换为平面
列表
必须有类似的Concat或All。(我不是很确定,但我想是的)