2017-07-07 116 views
0

我有一個oxyplot色譜柱系列,我用線性軸作爲直方圖進行了掩蓋。我從20個元素的頻率列表中獲得我的值。Oxyplot色譜柱系列 - 使用循環添加項目

我不知道是否有這樣做一個聰明的方法:

this.Items = new Collection<Item> 
{ 
    new Item {Label = "1", Value=frequency[0]}, 
    new Item {Label = "2", Value=frequency[1]}, 
    new Item {Label = "3", Value=frequency[2]}, 
    ... 
    new Item {Label = "18", Value=frequency[17]}, 
    new Item {Label = "19", Value=frequency[18]}, 
    new Item {Label = "20", Value=frequency[19]}, 
}; 

我試圖中創建一個for循環是這樣的:

this.Items = new Collection<Item> 
{ 
    for (int i = 0; i < 20; i++) 
    { 
     Items.Add(new Item { Label = i.ToString(), Value = frequency[i]}); 
    } 
}; 

但它不工作。

有沒有人有關於如何做到這一點的想法?

+2

把for循環* *以外的對象初始化器。 –

+0

創建空的Collection對象。在循環collectionObj.Add(...)中執行從1到20的循環;循環後this.Items = collectionObj ;. – mybirthname

+1

此外,對於未來 - 「不起作用」不是一個足夠的問題描述。請包括(在這種情況下)你得到的編譯器錯誤,以及運行時錯誤,無論你得到什麼異常。 –

回答

1

您不能將for循環放入對象初始值設定項中。

  1. 創建集合。

    this.Items = new Collection<Item>(); 
    
  2. 填充它:

    for (int i = 0; i< 20; i++) 
    { 
        Items.Add(new Item { Label = i.ToString(), Value = frequency[i] }); 
    }