C#Windows Form ComboBox下拉内容

时间:2009-10-30 11:13:04

标签: c# xml winforms combobox guid

我有一个包含我数据的XML文件。我想在组合框中填充下拉选项,其中包含该xml文件中的2个字段 - FirstName和LastName。

在xml文档中,我使用GUID作为唯一ID格式,因此组合框下拉列表需要每个唯一GUID变量的FirstName + LastName。

到目前为止我的内容如下:

XmlDocument xmlReturnDoc = new XmlDocument();
xmlReturnDoc.Load("Data.xml");

XmlNodeList firstname = xmlReturnDoc.GetElementsByTagName("FirstName");
XmlNodeList lastname = xmlReturnDoc.GetElementsByTagName("LastName");

StudentSelectStudentComboBox.Items.Add(firstname + lastname);

这不起作用......非常感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

由于您可能不得不在以后使用其他信息,我将创建一个包含所有必需字段的自定义数据存储类,然后将XML中的信息提取到这些自定义类的集合中。要进行显示,您只需将项目添加到列表(或数据绑定,无论您喜欢哪个),并覆盖自定义类上的ToString

答案 1 :(得分:0)

您正在添加一个项目,该项目是两个XmlNodeList的串联。所以你的ComboBox可能只有一个项目,对吗?

您可能希望迭代列表并单独添加每个名称。我不太确定你现在这样做的方式很强大。基本上可以有不同数量的名字和姓氏。匹配这些可能是非常重要的。

您应该迭代FirstName和LastName的元素并从那里挑选出节点。这应该是一个更好的解决方案。

答案 2 :(得分:0)

另一种选择是使用Dataset的ReadXML函数,并将整个xml文件放入数据集中。

遍历此数据集并添加所需的列...