加载一系列数组(C#)

加载一系列数组(C#),c#,.net,arrays,C#,.net,Arrays,我需要跟踪C#中这一属性的一个节点中有多少项,我不知道如何加载数组,从1开始到变量结束 这一部分的代码如下 //Loads file containing OSXInstaller File List doc.Load("Distribution.xml"); XmlNodeList ChoiceNode = doc.GetElementsByTagName("choice"); foreach (XmlNode choices in ChoiceNode) { //Code Execu

我需要跟踪C#中这一属性的一个节点中有多少项,我不知道如何加载数组,从1开始到变量结束

这一部分的代码如下

//Loads file containing OSXInstaller File List
doc.Load("Distribution.xml");
XmlNodeList ChoiceNode = doc.GetElementsByTagName("choice");
foreach (XmlNode choices in ChoiceNode)
{
    //Code Executed only  for packages, not categories
    if (choices.HasChildNodes == true)
    {
        choicetitle.Add(choices.Attributes["title"].InnerText);
        //Counts the number of items with an attribute of "title" in the 
        //distributions file, so if the user selects #1 in the list box it will 
        //know what number one is
        choicelistcount++;
    }
    if (choices.HasChildNodes == false)
    {
    }
    else
    {
        MessageBox.Show("Your Mac OS X Installation disk is damaged or was mounted improperly, please try again and doube-check your information!");
    }
}
我试图让它计算title属性的项目数,然后能够打印出列表中的所有项目

choicetitle是字符串列表

我希望它看起来像:

listBox1.Items.Add(choicetitle[1-choicetitlecount]);
编辑:回答下面的一些评论

我在很短的时间内完成了这项工作,像拼写检查这样的事情对我来说并不重要

我之所以还包括else语句,是因为它添加了一个额外的检查,检查OSX安装磁盘是否已安装

该程序是一个向OSX安装程序添加和删除软件包的工具,与live cd类型的程序不同,它可以向新的OSX安装程序添加可以安装的软件包
网站位于

您的问题不清楚,但您可能希望使用该类,它可以容纳任意数量的元素


您可以创建一个
列表
,然后向其中添加任意数量的
SomeType
对象,而不必担心大小或容量。(除非内存不足)

您需要循环浏览列表的一部分,如下所示:

for(int i = 1; i < choicetitlecount; i++)
    listBox1.Items.Add(choicetitle[i]);
for(int i=1;i
请注意,.Net数组和集合是基于0的,因此除非您想跳过第一项,否则您可能希望从0开始。(将
int i=1
更改为
int i=0



通常,应该为控件指定有意义的名称(标签除外)。例如,您可能希望将
listBox1
重命名为
choicetitle列表

什么类型的对象是
choicetitle
?我们可以看看您正在使用的XML的示例吗?您拼错了double。你到底在写什么?choicetitle是一个集合,还是只是你想要做的事情的伪代码?你的代码有点不清楚,并且有一些问题,比如当HasChildNodes为false时显示错误。你能不能看一看,把它弄清楚一点(并且改正一下),这样我们就可以帮忙了?