[英]read XML document using listbox
我有一個名為sms.xml的xml文檔,其中的數據存儲如下:
<sms address="+995555777777" time="Mar 12, 2013 5:08:09 PM" date="1363093689732" type="2" body="blah blah blah? :D" read="1" service_center="" name="name surname" />
這是一個短信,我有1000多個短信,所以我想按名稱或地址(無所謂)將它們加載到列表框中,當我單擊其中之一時,我想顯示所選短信的正文。 這是我的代碼:
XmlDocument xmlDoc = new XmlDocument();
public void loadXML()
{
xmlDoc.Load("sms.xml");
XmlNodeList smss = xmlDoc.SelectNodes("//sms");
foreach (XmlNode sms in smss)
{
listBox1.Items.Add(sms.Attributes["address"].Value);
}
}
private void button1_Click(object sender, EventArgs e)
{
loadXML();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
XmlNode node = xmlDoc.SelectSingleNode(string.Format("sms[@name='{0}']", listBox1.SelectedItem));
txtName.Text = node.Attributes["body"].Value;
}
並返回錯誤:“對象引用未設置為對象的實例。” 在txtName.text行上。 你能幫我嗎?
ps對不起,我的英語。
可能是語法問題,請嘗試以下操作:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
XmlNode node = xmlDoc.SelectSingleNode(string.Format("//sms[@name='{0}']", listBox1.SelectedItem));
txtName.Text = node.Attributes["body"].Value;
}
注意前導//
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.