我有一个xml文件,我想用自动填充框搜索它。 我使用下面的代码,但它崩溃了。我该如何解决它还是有更好的方法吗?
XDocument loadedData = XDocument.Load("BankCode.xml");
var data = from query in loadedData.Descendants("BankCode")
select new BankData
{
BankName= (string)query.Element("Bank"),
};
this.acBox.ItemsSource = data;
XDocument loadedCustomData = XDocument.Load("BankCode.xml");
var filteredData = from c in loadedCustomData.Descendants("Bank")
where c.Attribute("Code").Value == acBox.Text
select new BankData()
{
Code= c.Attribute("Code").Value
};
listBox1.ItemsSource = filteredData;
我想创建一个应用程序,当用户在按下搜索按钮后,在自动填充框中键入银行名称时,银行代码已显示给他/她。 (!! acBox是一个自动完成框。)
答案 0 :(得分:0)
您的Bank
个节点中有1个没有Code
属性。
你应该添加一个NULL检查:
var filteredData = from c in loadedCustomData.Descendants("Bank")
where c.Attribute("Code") != null && c.Attribute("Code").Value == acBox.Text
select new BankData()
{
Code= c.Attribute("Code").Value
};