2011-04-19 115 views
0

我有一個列表選取器從一個XML文件中的兩個字符串傳播,一個名稱和一個值。WP7 ListPicker設置SelectedItem問題

 XmlReader xml = XmlReader.Create("file.xml"); 
     XDocument _doc = XDocument.Load(xml); 

     var stringNames = from query in _doc.Descendants("string") 
        select new CustomValue 
        { 
         StringName = (string)query.Attribute("name"), 
         StringValue = (string)query.Attribute("value"), 
        }; 

     Listpicker.ItemsSource = stringNames; 

    public class CustomValue 
    { 
     public string StringName    
     { 
      get; 
      set; 
     } 

     public string StringValue 
     { 
      get; 
      set; 
     } 
    } 

我可以通過使用 ((appname.pagename.CustomValue)(this.Listpicker.SelectedItem)).StringValue

讀出的值或名稱但我無法設置將selectedItem,如果我使用與它上面的一個的方法改變了類CustomValue所述的StringValue的值。

非常感謝任何幫助!

謝謝:)

+0

你是如何試圖設置'SelectedItem'?如何設置綁定?你可以設置'SelectedIndex'好嗎? – 2011-04-19 12:07:17

+0

嘗試使用存儲在IO中的XML文件中的字符串進行設置。 我已經嘗試了'ListPicker.SelectedItem = string'和((appname.pagename.CustomValue) 謝謝 – Jamie 2011-04-19 12:11:09

回答

4

您不能設置SelectedItem = "something"作爲集合持有CustomValuestring實例。你必須使選擇的項目成爲可選項目之一。

假設您想要選擇集合中的第一個項目。有2種方式來做到這一點:

Listpicker.SelectedItem = stringNames.First(); 

Listpicker.SelectedIndex = 0; 
+0

謝謝!我用選定的索引方法 - 更容易,其他方法似乎無法工作...感謝您的幫助:) – Jamie 2011-04-19 20:01:23