2013-05-03 96 views
-1

我的數據從xml文件到列表框中有問題。如何讓xml數據到列表框

這是我想在我的列表框來獲取數據:

<gjester> 
    <gjest> 
    <id>test</id> 
    <fornanv>test</fornanv> 
    <etternavn>test</etternavn> 
    <adresse>test</adresse> 
    <telefonnr>test</telefonnr> 
    </gjest> 
</gjester> 

和我在GUI創建一個列表框。但我不知道在我的代碼中寫什麼。

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) 

{ 
I don't know what to write here 
} 
+0

這將是,如果你拿出你的審判要好得多,但看這http://stackoverflow.com/questions/16050422/how-to-load-xml-row- into-index-of-listbox-c-sharp這幾乎和你的Q類似。 – ClickBright 2013-05-03 15:24:26

回答

0

這是.NET 4.0(VS2010 C#),是完全未經測試,但可能會給你一個開始....

private void FillListBoxWithThingsIWantToSelect() 
{ 
     XDocument ListBoxOptions = XDocument.Load(Filename); 
     foreach (XElement element in ListBoxOptions.Root.Elements()) 
     { 
     if (element.Name.LocalName.Contains("gjester")) 
      { 
      foreach (XElement subelement in element.Elements()) 
       { 
       if (subelement.Name.LocalName.Contains("gjest")) 
        { 
        // What do you want to add? The Attribute? Element value 
        listbox1.Items.Add(element.Value.ToString()); 
        } 
       } 
      } 
     } 
} 

請你列出您的平臺,你想在什麼列表框。 你想從你的構造函數中調用它。

0

大約有很多種方法可以將XML文件中的項目添加到列表框中,但開始的一個好地方是XMLTextReader類和ListBox.Items.Add()方法的MSDN文檔。

此外 - 您可能會想要在列表框上的SelectedIndexChanged事件以外的地方執行此操作。爲了學習目的,請嘗試點擊按鈕。

祝你好運 - 在看過上面的內容後,如果你還沒有弄明白,我肯定有人會幫助你。

-1

可以使用字典對象將XML中的數據綁定到Listbox。

var dic = (from order in ds.Tables[0].AsEnumerable() 
        select new 
        { 
         UserView = order.Field<String>("Value"), 
         DevView = order.Field<String>("id") 

        }).AsEnumerable().ToDictionary(k => k.DevView, v => v.UserView); 

點擊here for reference

+0

這並不回答這個問題。 – Knelis 2015-02-16 09:25:30

+0

它很重要,當你喜歡綁定數據,希望它的確切答案..不能寫每一行代碼來表達你的答案,只能瀏覽想法 – livestrong 2015-02-16 09:29:50

+0

[閱讀](http://stackoverflow.com/help /如何回答)如何寫出一個好的答案。 – Knelis 2015-02-16 09:31:39