2017-04-10 4 views
-1

Ich versuche, aus einer Liste, die aus einer Datenbank eingelesen wird, eine beobachtbare Sammlung hinzuzufügen, aber wenn ich versuche, sie hinzuzufügen, wird nur ein Fehler ausgegeben. Ich denke, es ist die Art, wie ich es hinzufüge, vielleicht sollte ich etwas hinzufügen/woanders. The error I get is 'ChestItems' is a type, which is not valid in the given contextIch versuche, zu ObservableCollection hinzuzufügen, bekomme aber Fehler

Ich versuche, Objekte zu einer beobachtbaren Sammlung hinzuzufügen, so dass sie in einer Dropdown-Box angezeigt werden können. Nur die Namen.

public sealed partial class MainPage : Page 
{ 
    List<Defence> defItems; 
    List<HeadItems> headItems; 
    ObservableCollection<HeadItems> headList; 
    public MainPage() 
    { 
     headList = new ObservableCollection<HeadItems>(); 
     headItems = new List<HeadItems>();   
     this.InitializeComponent(); 
     DataContext = this; 
     data(); 
    } 

async void data() 
    { 
     // items read in from database, parsed and saved in an Object here 

     foreach (var item in defItems) 
     { 

      switch (item.armorType.ToString()) 
      { 
       case "Chest": 
        chestItems.Add(new ChestItems(item.armorName, item.physicalDefence, item.fireDefence, item.magicDefence, item.lightningDefence, item.poise)); 
        headList.Add(ChestItems); // this is where the error is 
        break; 
      } 
     } 
     headDropdown.ItemsSource = headList; 
    } 
} 
+0

Kontrolle der Bindung. Wert –

+0

deklarieren Sie die Eigenschaft public in der ObservableCollection headList –

Antwort

0

Sie haben eine misstyping:

Änderung headList.Add(ChestItems);-headList.Add(chestItems);

oder

versuchen, dies zu ändern:

switch (item.armorType.ToString()) 
{ 
    case "Chest": 
      var newChestItems=new ChestItems(item.armorName, item.physicalDefence, item.fireDefence, item.magicDefence, item.lightningDefence, item.poise); 
     chestItems.Add(newChestItems); 
     headList.Add(newChestItems); 
     break; 
} 
0

Wenn ich das richtig verstanden, was Sie versuchen zu tun, ändern

headList.Add(ChestItems); 

zu

headList.Add(chestItems); 
-1

dieses:

chestItems

Als Ihre Erklärung dieses

case "Chest": 
chestItems.Add(new ChestItems(item.armorName, item.physicalDefence, item.fireDefence, item.magicDefence, item.lightningDefence, item.poise)); 
headList.Add(ChestItems); // this is where the error is 
break; 

dieser headList muss headItems wie diese

headList.Add(headItems) 

chestItems hinzufügen Zeigt keine Erklärung

Verwandte Themen